bingoogolapple / BGARefreshLayout-Android

多种下拉刷新效果、上拉加载更多、可配置自定义头部广告位
4.31k stars 1k forks source link

配合RecyclerView数据为空时会崩溃 #24

Closed epolar closed 8 years ago

epolar commented 8 years ago

设置代码如下

        // 为BGARefreshLayout设置代理
        bgaContent.setDelegate(this);
        // 设置下拉刷新和上拉加载更多的风格     参数1:应用程序上下文,参数2:是否具有上拉加载更多功能
        BGARefreshViewHolder refreshViewHolder = new BGANormalRefreshViewHolder(getActivity(), false);
        // 设置下拉刷新和上拉加载更多的风格
        bgaContent.setRefreshViewHolder(refreshViewHolder);

放在Fragment中使用,配合RecyclerView,数据为空时会直接崩溃,没有数据,不清楚如果有数据是否也会崩溃

11-12 14:16:15.466 16772-16772/com.mypackge.test E/RecyclerView: No layout manager attached; skipping layout
11-12 14:17:25.946 16772-16772/com.mypackge.test E/InputEventReceiver: Exception dispatching input event.
11-12 14:17:25.946 16772-16772/com.mypackge.test E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
11-12 14:17:25.946 16772-16772/com.mypackge.test E/MessageQueue-JNI: java.lang.NullPointerException
at android.support.v7.widget.RecyclerView.onInterceptTouchEvent(RecyclerView.java:1819)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1822)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at cn.bingoogolapple.refreshlayout.BGARefreshLayout.dispatchTouchEvent(BGARefreshLayout.java:443)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1925)
at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1379)
at android.app.Activity.dispatchTouchEvent(Activity.java:2396)
at android.support.v7.internal.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:59)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1873)
at android.view.View.dispatchPointerEvent(View.java:7307)
at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3172)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3117)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4153)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4132)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4224)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:171)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:125)
at android.os.Looper.loop(Looper.java:124)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
11-12 14:17:25.946 16772-16772/com.mypackge.test D/AndroidRuntime: Shutting down VM
11-12 14:17:25.946 16772-16772/com.mypackge.test W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0xa622c288)
11-12 14:17:25.946 16772-16772/com.mypackge.test E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NullPointerException
 at android.support.v7.widget.RecyclerView.onInterceptTouchEvent(RecyclerView.java:1819)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1822)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at cn.bingoogolapple.refreshlayout.BGARefreshLayout.dispatchTouchEvent(BGARefreshLayout.java:443)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2176)
 at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1877)
 at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1925)
 at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1379)
 at android.app.Activity.dispatchTouchEvent(Activity.java:2396)
 at android.support.v7.internal.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:59)
 at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1873)
 at android.view.View.dispatchPointerEvent(View.java:7307)
 at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3172)
 at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3117)
 at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4153)
 at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4132)
 at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4224)
 at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:171)
 at android.os.MessageQueue.nativePollOnce(Native Method)
 at android.os.MessageQueue.next(MessageQueue.java:125)
 at android.os.Looper.loop(Looper.java:124)
 at android.app.ActivityThread.main(ActivityThread.java:4745)
 at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:511)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
 at dalvik.system.NativeStart.main(Native Method)
epolar commented 8 years ago

失误了,RecyclerView忘了设置LayoutManager了。 使用很方便,感谢分享。希望能保持活跃一直更新.