Android按钮设置当AlertDialog处于活动状态时,按下的行为会发生变化

时间:2015-04-15 00:51:23

标签: java android

我目前在创建的应用上有一个setPressed(true)按钮。当我按下后退按钮时,我也会出现一个AlertDialog框。我注意到,当我按下后退按钮并出现AlertDialog框时,我设置的按钮按下true变为false。我无法理解导致这种情况的原因,因为我的代码中没有任何内容告诉按钮将setPressed更改为false。 如果有人愿意,我可以提供我的代码,但我相信其他原因导致这一点。任何帮助将非常感激。 :)

public boolean onKeyDown(int keyCode, KeyEvent event) {

    if (keyCode == KeyEvent.KEYCODE_BACK) {
        exitByBackKey();

        return true;
    }
    return super.onKeyDown(keyCode, event);
}

protected void exitByBackKey() {

    if(!instOn){
        if(toast != null) 
            toast.cancel();



        AlertDialog alertbox = new AlertDialog.Builder(this).setMessage("Do you want to exit?")
                .setPositiveButton("Yes", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface arg0, int arg1) {

                finish();
                System.exit(0);

            }
        })
        .setNegativeButton("No", new DialogInterface.OnClickListener() {

            // do something when the button is clicked
            public void onClick(DialogInterface arg0, int arg1) {
                 if(!stage1 || !stage2){
                     button3.setClickable(false);
                     button3.setPressed(true);
                 }
            }
        })
        .setNeutralButton("Restart", new DialogInterface.OnClickListener() {

            // do something when the button is clicked
            public void onClick(DialogInterface arg0, int arg1) {

                newGame();
            }
        })
        .show();
        //alertbox.setCancelable(false);

    }
    else{
        instOn = false;
        trans.transition.reverseTransition(800);
        popupWindow.dismiss();
        button1.setClickable(true);
        button2.setClickable(true);
        soundButton.setClickable(true); 
    }
}

0 个答案:

没有答案