繁体   English   中英

尝试调用虚拟方法'android.content.Context android.support.v4.app.FragmentActivity.getApplicationContext()'android

[英]Attempt to invoke virtual method 'android.content.Context android.support.v4.app.FragmentActivity.getApplicationContext()' android

设置RecyclerViewAdapter时出现一些问题

我得到错误

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“ android.content.Context android.support.v4.app.FragmentActivity.getApplicationContext()”

mLayoutManager = new LinearLayoutManager(getActivity().getApplicationContext());

如何修复

for (ProfileFeedListModelTwo.PostBean.PollBean pollBean : pp){
   pollBeanArrayList.add(pollBean);}

 adapDetailTopicPoll = new AdapDetailTopicPoll(pollBeanArrayList,getContext());
            mLayoutManager = new LinearLayoutManager(getActivity().getApplicationContext());
            recyclerView.setLayoutManager(mLayoutManager);
            recyclerView.setItemAnimator(new DefaultItemAnimator());
            recyclerView.setAdapter(adapDetailTopicPoll);

getActivity()null 在将活动附加到片段之前,您可能正在调用此方法。

文档中

警告:如果您在Fragment中需要一个Context对象,则可以调用getActivity()。 但是,仅在将片段附加到活动时才小心调用getActivity()。 如果片段尚未附加或在其生命周期结束时分离,则getActivity()将返回null

尝试了解片段的生命周期 ,以及它如何与活动生命周期结合在一起。

仅使用此mLayoutManager = new LinearLayoutManager(getActivity()); 如果您正在活动中编写此代码,请使用getApplicationContext()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM