[英]RecyclerView Adapter inside Fragment
我在 firebase OnCompleteListener 内的片段中设置了一个回收器适配器。 所以,问题是当我在片段之间快速导航时(通过导航视图),我有一个错误“java.lang.IllegalStateException: Fragment not attach to Activity”。 Android Studio 为我提供了该行代码的链接:
recyclerView.setAdapter(new AdapterRV(requireActivity(), listLeft, listRight));
据我了解,主要问题是
requireActivity()
我找到了一些解决方案:
view.getContext()
requireContext()
什么是适合我的案例? 或者可能有更好的方法来解决这个问题?
在您的场景应用程序抛出异常,因为一旦数据到达并且我们打算将它们传递给 recyclerview,您的片段将被分离并导致异常
在我看来,解决方案应该是这样的......
您应该向适配器添加一个方法来传递数据:
在OnViewCreated 中:
adapter = new AdapterRV(requireActivity())
收到数据时
adapter.submitList(listLeft, listRight)
如果必须在数据到达后设置适配器,则需要在检查上下文是否不为空后调用适配器
if ( getContext() != null )
{
recyclerView.setAdapter(new AdapterRV(requireActivity(), listLeft, listRight));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.