Android Fragment-重新启动应用程序时,getActivity().runOnUiThread返回null [英] Android Fragment - getActivity().runOnUiThread returns null when restarting app

查看:442
本文介绍了Android Fragment-重新启动应用程序时,getActivity().runOnUiThread返回null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我第一次启动应用程序时,下面的代码可以正常工作.但是当离开应用程序并再次打开它时,出现错误消息getActivity() returns null.

when I start the app the first time the code below works just fine. But when leaving the app and opening it again I get an error saying getActivity() returns null.

我正在片段中执行以下代码:

I'm doing this code in a Fragment:

(getActivity()).runOnUiThread(new Runnable() {
            @Override
            public void run() {
                    enableMenu();
                    openMenu();
                    navigateToFragment(new BlankFragment());
                }
            });

该怎么办?

我如何获得活动?

推荐答案

创建Activity对象,并将其分配给onAttach方法,如下所示. 有时getActivity提供null,因此它是在onAttach中创建活动实例并使用该实例的更好方法.

Create object of Activity and assign that on the onAttach Method like below. Some times getActivity gives null so its a better way to make activity instance in onAttach and use that instance.

private Activity mActivity;

@Override
public void onAttach(Activity activity) {
   super.onAttach(activity);
   mActivity = activity;
}

现在使用此对象代替getActivity()

这篇关于Android Fragment-重新启动应用程序时,getActivity().runOnUiThread返回null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆