Java 声明RecyclerView时出现NullPointerException
我正试图在项目中的活动中声明RecyclerView。当我切换到此活动时,项目崩溃。 当我尝试实例化我的RecyclerView时,我得到一个NullPointerException,请参见下面的错误:Java 声明RecyclerView时出现NullPointerException,java,android,nullpointerexception,Java,Android,Nullpointerexception,我正试图在项目中的活动中声明RecyclerView。当我切换到此活动时,项目崩溃。 当我尝试实例化我的RecyclerView时,我得到一个NullPointerException,请参见下面的错误: E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.marykate.marykatefordefyp, PID: 13490 java.lang.RuntimeException: Unable to sta
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.marykate.marykatefordefyp, PID: 13490
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.marykate.marykatefordefyp/com.example.marykate.marykatefordefyp.ViewFavourites}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2264)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2313)
at android.app.ActivityThread.access$1100(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5336)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:681)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.example.marykate.marykatefordefyp.ViewFavourites.onCreate(ViewFavourites.java:54)
at android.app.Activity.performCreate(Activity.java:5302)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1090)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2228
我在这个网站上看过类似的问题,但没有一个有我想要的答案。我没有引用错误的xml文件,而是调用了正确的RecyclerView。
请参见下面的我的代码:
RecyclerView eventsListview;
List<Favourite> favourites = new ArrayList<>();
FaveAdapter adapter = new FaveAdapter(this, R.layout.eventlist_layout, favourites);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_favourites);
eventsListview.findViewById(R.id.eventsListview1); //the line causing an error
RecyclerView事件列表视图;
列表收藏夹=新的ArrayList();
FaveAdapter=新的FaveAdapter(这个,R.layout.eventlist_布局,收藏夹);
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u view\u Favorites);
eventsListview.findViewById(R.id.eventsListview1);//导致错误的行
有人知道这可能是什么原因吗?使用此
FaveAdapter=new FaveAdapter(this,R.layout.eventlist\u layout,favorites);
在您的onCreate()中刚刚尝试在onCreate中实例化适配器,但它仍然抛出相同的错误。请检查下面的答案。正如您所看到的,RecyclerView
是一个字段,为空。应该在onCreate
中定义以供使用。这很有效!错过了一件愚蠢的事情,非常感谢
eventsListview = (RecyclerView)findViewById(R.id.eventsListview1);