我正在开发一个有活动的android应用程序。该Activity有一个ViewPager,它使用FragmentStatePagerAdapter加载两个片段。
正在Activity的onResume方法上重新创建此适配器。
这就是错误的出现方式:
创建活动后,我将我的应用程序置于后台(使用设备的主页按钮),然后打开其他应用程序(特别是那些占用大量内存的应用程序)。之后,我从后台再次打开我的应用程序。我在viewPager中的一个片段中有这样的方法:
public void doSomething(){
if(getActivity() != null) {
((HomeActivity) getActivity()).doThings():
}
}
调试时我发现getActivity()方法此时返回null。所以“doThings()”方法永远不会被执行。我还注意到Fragment的视图已经创建了。
当我在应用程序的后台时间没有打开消耗内存的其他应用程序时,我没有这个问题。
这是溢出内存错误吗?为什么如果片段似乎正确加载,getActivity()方法返回null?
提前谢谢