Java dataOnChange崩溃已被替换的片段
以及导致崩溃的复选框:Java dataOnChange崩溃已被替换的片段,java,android,android-recyclerview,fragment,onpause,Java,Android,Android Recyclerview,Fragment,Onpause,以及导致崩溃的复选框: java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference at com.darkjp.todo.MyListsFragment.sendSomeToThatRecyclerViewBiatch(MyListsFragmen
java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference
at com.darkjp.todo.MyListsFragment.sendSomeToThatRecyclerViewBiatch(MyListsFragment.java:93)
at com.darkjp.todo.MyListsFragment.access$000(MyListsFragment.java:24)
at com.darkjp.todo.MyListsFragment$1.onDataChange(MyListsFragment.java:61)
recyclerView收到了一个更改,它是nornam,但是recyclerView在一个片段中,我想是“onPause”。碎片已经被替换(动态框架布局),我想应该是在毁灭的路上,或者从后面回来。
onChange似乎使应用程序崩溃。
我正在研究onPause/onResume片段的行为,以了解如何在dataOnChange处于“睡眠”状态时管理它,但我看不到任何线索
如果我很好地解决了这个问题:我试图找到一个在实际片段中不存在的recyclerView(并且在onPause()、OnResume()时无法访问)。
我不明白为什么会调用这个片段(当另一个片段更相关时)。我想的那个片段是由myListFragment调用/实例化的…我想在这个谜的背后是一个父/子流。好吧。。。
这不是一个生命周期
我正在做一个getView()来获取“R.id.xxxxxx”recyclerView。它是错误的,所以它启动了一次,但无法恢复。我只是,现在,从“经典”中获取recyclerView
我在做一个实验
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
view = inflater.inflate(R.layout.fragment_my_lists, container, false);
myRecycler = view.findViewById(R.id.myRecycler);
}
从MyListsFragment.java的第93行开始,找出哪个变量是空的,为什么是空的。是的,我做了。回收者…它是onPause()因此,我猜,不可访问并返回null。并且…recyclerView位于一个片段中,该片段已被另一个片段替换,该片段将启动clickListener,从而使应用程序崩溃。并且…当myListfragment处于“活动”状态时回收器工作正常。我建议你检查活动和片段生命周期。确保你尊重它们。这是我不理解的。我应该如何处理已启动但暂停的片段?空值是“缺失”片段中元素的findViewById。为什么需要暂停片段的视图?
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
view = inflater.inflate(R.layout.fragment_my_lists, container, false);
myRecycler = view.findViewById(R.id.myRecycler);
}
myRecycler = this.getView.findViewById(R.id.myRecycler);