Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 检查生命周期状态大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
public class MyFragment extends Fragment {
    @Override
    public void onCreate(Bundle savedInstanceStatE) {
        super.onCreate(savedInstanceStatE);
        setRetainInstance(true);
    }

    @Override
    public void onResume() {
        super.onResume();

        if (?) {
            ... handle ...
        }
    }

    @Override
    public void onPause() {
        super.onPause();

        if (?) {
            ... handle ...
        }
    }
}

我正在尝试使用一个实例保留片段来处理onResume()和onPause()期间的一些事情.我已经将它添加到主要活动中,到目前为止,除了一件事之外,它工作得很好.如果我在应用程序中输入另一个Activity,让我们说应用程序设置,这个片段仍会在屏幕翻转时执行onResume和onPause.

我需要的是一种方法来确定这个片段所附加的活动是否在前台.我尝试过像isTaskRoot这样的东西,但只要执行这些生命周期方法,它就会返回true.现在如果Android知道在运行onResume之后将这个片段暂停,那么必须有一种方法可以在onResume方法中检查这个吗?

解决方法

调用onPause()时,Activity变为非前景.
调用onResume()时,Activity变为前景.

http://developer.android.com/guide/components/activities.html#Lifecycle

一种方法可以找到答案

是要在activity的onPause()方法中设置isForeground = false的活动,并在activity的onResume()方法中设置isForeground = true,并通过类似于@L_419_1@的回调接口使该标志可用于片段.区别在于将片段事件推送到Activity,片段将读取活动状态(例如,SomeInterface.getForeground()).

另一种方法是定义一个公共@L_733_4@myFragment.setForeground(Boolean foreground)并使该活动从其onPause()和onResume()方法调用方法.

大佬总结

以上是大佬教程为你收集整理的android – 检查生命周期状态全部内容,希望文章能够帮你解决android – 检查生命周期状态所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。