检查应用程序是否进入后台并关闭我的对话框(如果有)

时间:2015-10-01 05:57:28

标签: android

我需要检查我的应用程序是否由于Home,power或任何其他导致应用程序进入后台的事件而进入后台。基于此事件,我必须关闭所有对话框(如果显示)。我的应用程序还支持方向更改,如果方向发生变化,我必须保留对话框(如果显示)。

我尝试过的事情:我尝试过以下博客中提到的方法,但方向更改失败了。 http://vardhan-justlikethat.blogspot.in/2013/05/android-solution-to-detect-when-android.html

大多数Stackoverflow建议都无法改变方向。

修改 有关我的应用程序的更多信息可以提供帮助。 我的活动有标签和一个容器,在标签点击时可以用Fragment替换。每个片段都有不同的横向和纵向布局。甚至景观和肖像的活动布局也不同。

2 个答案:

答案 0 :(得分:0)

覆盖你的onPause方法,以确保在进入后台之前关闭任何打开的对话框

@Override
protected void onPause() {
    super.onPause();
    if (alertDialog != null) {
        alertDialog.dismiss();
    }
}

答案 1 :(得分:0)

on onPause关闭所有对话框:

$request_url = 'http://second-server-address/listening_page.php?function=somefunction&funcParam1=val&funcParam2.val

如果您想要处理方向更改,请在清单中的活动代码中添加此行:

<select class="form-control">
<option value="Select peripheral">Select peripheral</option>
<!-- ngRepeat: p in peripheral --><option data-ng-repeat="p in peripheral" value="" class="ng-binding ng-scope">CUCM_PG_1</option>
<!-- end ngRepeat: p in peripheral -->
</select>

这将覆盖android的方向更改的默认行为。