【发布时间】:2017-11-04 19:04:41
【问题描述】:
this.getActivity() 在我的片段中为 NULL,并且是从实际活动本身调用的。这并不总是发生,但我该如何解决?
sportButton.setBackgroundColor(ViewHelper.getColor(this.getActivity()));
EventActivity.java
eventsFragment.setUpEvents(getEventApplication());
EventsFragment.java
public void setUpEvents(Application application) {
sportButton.setBackgroundColor(ViewHelper.getColor(this.getActivity()));
【问题讨论】:
-
可能是调用的时机使它为空。此活动不会为空的保证之一是在调用
onActivityCreated时。此外,当 Fragment 与 Activity 分离时,Fragment 可能会存活一段时间,但getActivity()将为空。 -
尝试将
this.getActivity()更改为getActivity() -
为什么要删除
this工作? -
因为
this是一个上下文。不属于片段。但它对它的容器 Activity 有影响。
标签: android android-fragments android-activity null