Android 已暂停但未触发
我已经创建了一个对话框,但是根据活动工作流,它应该触发onpause,但是没有。出什么事了? Android活动流程:Android 已暂停但未触发,android,android-activity,onpause,Android,Android Activity,Onpause,我已经创建了一个对话框,但是根据活动工作流,它应该触发onpause,但是没有。出什么事了? Android活动流程: 此代码仅显示警报,但不会导致暂停 onPause将在另一个活动(而不是警报)隐藏该活动时被调用。警报仍然属于同一活动。此代码将仅显示警报,但不会导致暂停 onPause将在另一个活动(而不是警报)隐藏该活动时被调用。警报仍然属于同一活动。活动的API有更好的定义: 当某个活动进入后台但尚未被终止时,作为活动生命周期的一部分调用。onResume()的对应项 您对“部分可见”的
此代码仅显示警报,但不会导致暂停
onPause
将在另一个活动(而不是警报)隐藏该活动时被调用。警报仍然属于同一活动。此代码将仅显示警报,但不会导致暂停
onPause
将在另一个活动(而不是警报)隐藏该活动时被调用。警报仍然属于同一活动。活动的API有更好的定义:
当某个活动进入后台但尚未被终止时,作为活动生命周期的一部分调用。onResume()的对应项
您对“部分可见”的怀疑不是由于对话框引起的,查看您的链接,您可以找到:
当系统为您的活动调用onPause()时,从技术上讲,这意味着您的活动仍然部分可见,但最常见的情况是指示用户正在离开活动,并且很快将进入停止状态
活动API有更好的定义: 当某个活动进入后台但尚未被终止时,作为活动生命周期的一部分调用。onResume()的对应项 您对“部分可见”的怀疑不是由于对话框引起的,查看您的链接,您可以找到: 当系统为您的活动调用onPause()时,从技术上讲,这意味着您的活动仍然部分可见,但最常见的情况是指示用户正在离开活动,并且很快将进入停止状态
对话框
实际上不应该暂停活动。你可能被这句话弄糊涂了-
在正常应用程序使用期间,前台活动有时会受到其他视觉组件的阻碍,导致活动暂停。例如,当半透明活动打开时(例如对话框样式的活动),上一个活动将暂停
它以对话框的形式讨论新的活动
打开,但不是对话框
但是,如果希望在对话框打开时触发某些代码,可以使用-
对话框
实际上不应该暂停活动。你可能被这句话弄糊涂了-
在正常应用程序使用期间,前台活动有时会受到其他视觉组件的阻碍,导致活动暂停。例如,当半透明活动打开时(例如对话框样式的活动),上一个活动将暂停
它以对话框的形式讨论新的活动
打开,但不是对话框
但是,如果希望在对话框打开时触发某些代码,可以使用-
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
//stopAutoCall = true;
// Handle item selection
// if (item.getTitle().toString().toLowerCase() == "settings")
// {
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Number");
alert.setMessage("Put here the number in to call");
alert.show();
}
@Override
public void onPause()
{
super.onPause();
stopAutoCall = true;
}
alert.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
stopAutoCall = true;
}
});