Code Monkey home page Code Monkey logo

expandablepager's Issues

Potentially useful additions

OnSliderStateChangeListener

It would be nice to include the page positions like so:

public interface OnSliderStateChangeListener {
    void onStateChanged(View page,@SlidingContainer.SliderState int state, int position);
    void onPageChanged(View page,@SlidingContainer.SliderState int state, int position);
}

ExpandablePager

You can call setCurrentItem(...) but there should be a getCurrentItem() as well.

ExpandablePagerAdapter

It would be nice if you could also extend FragmentPagerAdapter. I'd like to use fragments instead of views for this.

Can't find fragment by tag

When setting a OnSliderStateChangeListener and using a FragemtnPagerAdapter, getView() is puking because no fragment is being returned by id. Relying on internal API code such as "android:switcher:" + R.id.internal_pager_id + ":" + position is fragile and will break. Is the View object really necessary for the OnSliderStateChangeListener? It seems like position could suffice and maybe just make getPage public instead?

java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.support.v4.app.Fragment.getView()' on a null object reference
                                                                 at com.telenav.expandablepager.ExpandablePager.getPage(ExpandablePager.java:241)
                                                                 at com.telenav.expandablepager.ExpandablePager.access$200(ExpandablePager.java:46)
                                                                 at com.telenav.expandablepager.ExpandablePager$1.onPageScrolled(ExpandablePager.java:92)
                                                                 at android.support.v4.view.ViewPager.dispatchOnPageScrolled(ViewPager.java:1845)
                                                                 at android.support.v4.view.ViewPager.onPageScrolled(ViewPager.java:1819)
                                                                 at android.support.v4.view.ViewPager.pageScrolled(ViewPager.java:1757)
                                                                 at android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:633)
                                                                 at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1706)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1079)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1079)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1695)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
                                                                 at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
                                                                 at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
                                                                 at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
                                                                 at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
                                                                 at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
                                                                 at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
                                                                 at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
                                                                 at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
                                                                 at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
                                                                 at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2678)
                                                                 at android.view.View.layout(View.java:16636)
                                                                 at android.view.ViewGroup.layout(ViewGroup.java:5437)
                                                                 at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2171)
                                                                 at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1931)
                                                                 at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1107)
                                                                 at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6013)
                                                                 at android.view.Choreographer$CallbackRecord.run(Choreographer.java:858)
                                                                 at android.view.Choreographer.doCallbacks(Choreographer.java:670)
                                                                 at android.view.Choreographer.doFrame(Choreographer.java:606)
                                                                 at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:844)
                                                                 at android.os.Handler.handleCallback(Handler.java:739)
                                                                 at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                 at android.os.Looper.loop(Looper.java:148)
                                                                 at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                                 at java.lang.reflect.Method.invoke(Native Method)
                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:72

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.