我希望我的应用在AlertDialog.Builder
处于活动状态时完成当前活动,只需单击主页按钮一次。通常需要两次点击(首先点击关闭对话框,然后再关闭当前活动)。
我已尝试将finish()
放入public boolean onKeyDown()
方法,但我只是在第二次点击内进入(即当AlertDialog.Builder
不活跃时了)。
有什么想法吗?
PS:我的AlertDialog.Builder
是onCreate(
方法。
答案 0 :(得分:1)
如果对话框不可取消,则应在第一次按主页按钮时进入主屏幕。请参阅AlertDialog.Builder#setCancelable(boolean)
。
答案 1 :(得分:0)
当你在活动上按下Home Button时,它会调用OnStop()方法
所以你必须在你的活动上处理它:
@Override
protected void onStop() {
super.onStop();
}
所以在你的情况下,你可以使用它:
@Override
protected void onStop() {
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
}
希望能帮到你;) 祝你好运