Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在按下键时添加警报对话框?_Android - Fatal编程技术网

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);