“快速设置”下拉列表和片段生命周期回调

时间:2016-10-03 09:34:57

标签: android android-fragments settings

在我的应用中,我需要在打开和关闭“快速设置”下拉列表时执行某些操作。例如,当用户从“快速设置”下拉菜单打开WiFi时,我需要检查互联网并刷新片段的内容。在这种情况下,在打开和关闭“快速设置”下拉列表时,在片段中调用哪个生命周期回调方法。

2 个答案:

答案 0 :(得分:1)

打开快速设置dorp-down时您的活动将

(活动)的onPause(); ---------->(片段)onStop(); --------> (活动)onStop();

关闭快速设置dorp-down时您的活动将来自

(活动)onStop(); ------> (Activity)onRestart(); -------->(Activity)onStart(); ---->

(片段)在onStart(); ------>(活性)的onResume(); ------>(片段)的onResume();

我希望很清楚,但如果你不明白,你会看到这张照片。 enter image description here

答案 1 :(得分:1)

我遇到了类似的问题,在访问快速设置后我需要运行一些代码。不幸的是,根据我的经验,onResume()在取消快速设置时没有被调用。

相反,我重写了活动的Activity.onWindowFocusChanged(boolean hasFocus)方法。我将值存储为LiveData,并在片段中对其进行了观察。

我发现的一个警告是,我在片段中使用了警报对话框。这也导致Activity.onWindowFocusChangedfalse调用。除了处理这种情况之外,它还帮了我大忙。