相关疑难解决方法(0)

ConstraintLayout 没有为 RecyclerView 上单击的项目设置 NavController

当我单击某个项目时,有时可以工作,有时会崩溃。

\n\n

以下是单击某个项目后出现的致命异常。

\n\n
2020-03-31 21:59:18.087 15383-15383/com.aliton.myapp E/AndroidRuntime: FATAL EXCEPTION: main\n    Process: com.aliton.myapp, PID: 15383\n    java.lang.IllegalStateException: View androidx.constraintlayout.widget.ConstraintLayout{b3bb13b V.E...C.. .......D 0,336-720,518} does not have a NavController set\n        at androidx.navigation.Navigation.findNavController(Navigation.java:84)\n        at com.aliton.myapp.Adapter.StoreSelectAdapter$StoreSelectViewHolder$1.onChanged(StoreSelectAdapter.java:147)\n        at com.aliton.myapp.Adapter.StoreSelectAdapter$StoreSelectViewHolder$1.onChanged(StoreSelectAdapter.java:142)\n        at androidx.lifecycle.LiveData.considerNotify(LiveData.java:131)\n        at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:149)\n        at androidx.lifecycle.LiveData.setValue(LiveData.java:307)\n        at androidx.lifecycle.MutableLiveData.setValue(MutableLiveData.java:50)\n        at androidx.lifecycle.LiveData$1.run(LiveData.java:91)\n        at android.os.Handler.handleCallback(Handler.java:751)\n        at android.os.Handler.dispatchMessage(Handler.java:95)\n        at android.os.Looper.loop(Looper.java:154)\n        at android.app.ActivityThread.main(ActivityThread.java:6351)\n        at java.lang.reflect.Method.invoke(Native Method)\n        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:896)\n        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:786)\n
Run Code Online (Sandbox Code Playgroud)\n\n

在这种情况下,首先我需要将一个项目 ( StoreEntity) 插入到我的房间数据库中,侦听它id,然后导航到具有在中定义的对象的其他片段direction

\n\n

下面是我的适配器:

\n\n
public class StoreSelectAdapter extends RecyclerView.Adapter<StoreSelectAdapter.StoreSelectViewHolder> {\n\n    private static final …
Run Code Online (Sandbox Code Playgroud)

navigation android android-recyclerview

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

android ×1

android-recyclerview ×1

navigation ×1