私はアンドロイドアプリケーションを開発しています。アプリケーションで [戻る] ボタンを押したときに、本当に終了したい場合は、プロンプト (警告ダイアログのようなもの) が表示されることを願っています。この警告ダイアログをどこに置くべきか、ユーザーがアプリケーションを終了したい場所である [はい] ボタンに何を書くべきかわかりません。私を助けてください。
			
			2106 次
		
5 に答える
            8        
        
		
OnBackPressed()関数をオーバーライドできます。
  @Override
public void onBackPressed()
{
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Exit");
    builder.setMessage("Are You Sure?");
    builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    finish();
            }
        });
    builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
        }
    });
    AlertDialog alert = builder.create();
    alert.show();
}
    于 2012-12-18T08:38:21.953   に答える
    
    
            3        
        
		
@Override
public void onBackPressed() {
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
        AppDemoActivity.this);
alertDialog.setPositiveButton("Yes", new OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        finish();
    }
});
alertDialog.setNegativeButton("No", null);
alertDialog.setMessage("Do you want to exit?");
alertDialog.setTitle("AppTitle");
alertDialog.show();
}
これを使用して、Back Pressed に関するアラートを表示します
于 2012-12-18T08:39:59.350   に答える
    
    
            2        
        
		
これは、[戻る] ボタンをオーバーライドする別の方法です。
@Override
    public boolean onKeyDown(int keyCode, KeyEvent event)  {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            Toast.makeText(getApplicationContext(), "Back Pressed", Toast.LENGTH_LONG).show();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
ありがとう。
于 2012-12-18T08:43:51.420   に答える
    
    
            1        
        
		
@Override
    private void onBackPressed() {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
alertDialogBuilder.setTitle("Do you really want to exit?");
alertDialogBuilder
        .setMessage("Click yes to exit!")
        .setCancelable(false)
        .setPositiveButton("Yes",new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog,int id) {
                // if this button is clicked, close
                // current activity
                ThisActivity.this.finish();
            }
          })
        .setNegativeButton("No",new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog,int id) {
                // if this button is clicked, just close
                // the dialog box and do nothing
                dialog.cancel();
            }
        });             
        AlertDialog alertDialog = alertDialogBuilder.create(); 
        alertDialog.show();
  }
    于 2012-12-18T08:46:04.453   に答える
    
    
            1        
        
		
をオーバーライドしonBackPressedてアラートを表示し、yesボタンfinishでアクティビティを表示できます。
public void onBackPressed() {
    //show alert here
}
    于 2012-12-18T08:36:54.420   に答える