lsjwzh / RecyclerViewPager

Deprecated
Apache License 2.0
3.53k stars 667 forks source link

Line 60 of LoopRecyclerViewPagerAdapter.java will give a divide by 0 error if there are no elements in the adapter #164

Open mikesol opened 7 years ago

BohdanSamusko commented 7 years ago

I have got the same issue when I use LoopRecyclerView with empty list. Please, fix it :(

Here is logs:

java.lang.ArithmeticException: divide by zero at com.lsjwzh.widget.recyclerviewpager.LoopRecyclerViewPagerAdapter.getActualPosition(LoopRecyclerViewPagerAdapter.java:52) at com.lsjwzh.widget.recyclerviewpager.LoopRecyclerViewPagerAdapter.getItemViewType(LoopRecyclerViewPagerAdapter.java:33) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5200) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5153) at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2061) at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1445) at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1408) at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:580) at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3374) at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3183) at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3627) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323) at android.widget.FrameLayout.onLayout(FrameLayout.java:261) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1741) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323) at android.widget.FrameLayout.onLayout(FrameLayout.java:261) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1741) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323) at android.widget.FrameLayout.onLayout(FrameLayout.java:261) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1741) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323) at android.widget.FrameLayout.onLayout(FrameLayout.java:261) at com.android.internal.policy.DecorView.onLayout(DecorView.java:727) at android.view.View.layout(View.java:17637) at android.view.ViewGroup.layout(ViewGroup.java:5575) at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2346) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2068) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6338) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874) at android.view.Choreographer.doCallbacks(Choreographer.java:686) at android.view.Choreographer.doFrame(Choreographer.java:621) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6121) 06-15 20:05:55.443 2872-2872/com.snaapy.application E/AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)