Android Firebase数据未显示,获取错误

Android Firebase数据未显示,获取错误,android,android-fragments,firebase-realtime-database,android-recyclerview,firebaseui,Android,Android Fragments,Firebase Realtime Database,Android Recyclerview,Firebaseui,当我搜索任何东西时,它什么也没做,但当我按下按钮时,我的应用程序崩溃并出错。我不知道怎么了 主要活动 错误 2020-02-22 19:57:17.804 15653-15653/com.example.crimererecords D/AndroidRuntime:关闭虚拟机 2020-02-22 19:57:17.805 15653-15653/com.example.crimererecords E/AndroidRuntime: 致命异常:主 进程:com.example.crimere

当我搜索任何东西时,它什么也没做,但当我按下按钮时,我的应用程序崩溃并出错。我不知道怎么了

主要活动

错误

2020-02-22 19:57:17.804 15653-15653/com.example.crimererecords D/AndroidRuntime:关闭虚拟机 2020-02-22 19:57:17.805 15653-15653/com.example.crimererecords E/AndroidRuntime:

致命异常:主 进程:com.example.crimereRecords,PID:15653 java.lang.NullPointerException:尝试读取空对象引用上的字段“android.view.view androidx.recyclerview.widget.recyclerview$ViewHolder.itemView” 位于androidx.recyclerview.widget.recyclerview$Adapter.createViewHolderRecyclerView.java:7079 在androidx.recyclerview.widget.recyclerview$Recycler.TryGetViewHolderFormositionByDeadLineRecyclerView.java:6235 在androidx.recyclerview.widget.recyclerview$Recycler.getViewForPositionRecyclerView.java:6118 在androidx.recyclerview.widget.recyclerview$Recycler.getViewForPositionRecyclerView.java:6114 位于androidx.recyclerview.widget.LinearLayoutManager$LayoutState.nextLinearLayoutManager.java:2303 位于androidx.recyclerview.widget.LinearLayoutManager.layoutChunkLinearLayoutManager.java:1627 在androidx.recyclerview.widget.LinearLayoutManager.fillLinearLayoutManager.java:1587 在androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildrenLinearLayoutManager.java:665 在androidx.recyclerview.widget.recyclerview.dispatchLayoutStep2RecyclerView.java:4134 位于androidx.recyclerview.widget.recyclerview.dispatchLayoutRecyclerView.java:3851 在androidx.recyclerview.widget.recyclerview.ConsumpendingUpdateOperationsRecyclerView.java:1897 在androidx.recyclerview.widget.recyclerview$1.runRecyclerView.java:414 在android.view.Choreographer$CallbackRecord.runChoreographer.java:949 在android.view.Choreographer.docallbackshoreographer.java:761 在android.view.Choreographer.doFrameChoreographer.java:693 在android.view.Choreographer$FrameDisplayEventReceiver.runChoreographer.java:935 位于android.os.Handler.handleCallbackHandler.java:873 在android.os.Handler.dispatchMessageHandler.java:99 在android.os.Looper.Looper.java:193 在android.app.ActivityThread.mainActivityThread.java:6669 在java.lang.reflect.Method.Invokenactive方法中 位于com.android.internal.os.RuntimeInit$MethodAndArgsCaller.RuntimeInit.java:493 位于com.android.internal.os.ZygoteInit.mainZygoteInit.java:858

2020-02-22 19:57:17.820 15653-15653/com.example.crimereRecords I/Process:发送信号。PID:15653信号:9

onCreateViewHolder方法返回null,而它应该为数据库中的数据返回一个新的视图持有者

典型的实现如下所示:

public CriminalViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.criminal, parent, false);

    return new CriminalViewHolder(view);
}
其中R.layout.criminal是要用于显示数据库中的节点的布局

有关的FirebaseUI文档中对这些都有很好的介绍,因此我建议您花些时间阅读。

请阅读-总结是,这不是一种解决志愿者问题的理想方法,可能会对获得答案产生反作用。请不要将此添加到您的问题中。
public CriminalViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.criminal, parent, false);

    return new CriminalViewHolder(view);
}