Android 如何在按下键时添加警报对话框?
我的申请表上有这个代码Android 如何在按下键时添加警报对话框?,android,Android,我的申请表上有这个代码 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { Intent a = new Intent(this,a_stages.class); a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Intent a = new Intent(this,a_stages.class);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(a);
return true;
}
return super.onKeyDown(keyCode, event);
}
现在,我想添加一个警报对话框,询问用户是否想去,例如,在另一个页面上,如果用户单击“是”,它将指向特定页面,如果用户单击“取消”,则为dialog.cancel()
编辑
我尝试了这段代码,但在“Intent a=new Intent(this,a_stages.class);”行中出现了一个错误,该行表示“构造函数Intent(new DialogInterface.OnClickListener(){},class)未定义”
太近了!按下后退键时需要使用
return false
,否则需要使用return super.onKeyDown()
。像这样:
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Dialog code
return false;
}
return super.onKeyDown(keyCode, event);
(如果您只想听back键,也可以重写
onBackPressed()
)中的Intent a=new Intent(这是a_stages.class)
,此
指您的匿名单击侦听器。您需要显式引用包含的类,如
Intent a = new Intent(MyActivity.this,a_stages.class);
其中
MyActivity
是该代码所在的活动的名称。+1我遗漏了该注释,看起来像bq1。这个就可以了。“我的答案仍然有效,所以我将留待决定。”萨姆同意了。他需要在您的回答中返回,以避免出现默认的onBackPressed
调用。
Intent a = new Intent(MyActivity.this,a_stages.class);