내 응용 프로그램에 두 개의 경고 대화 상자가 있습니다.Yes 버튼을 클릭했을 때 alertdialog를 해제하고 BackPressed에서 다시 표시하지 않으려면 어떻게해야합니까?
1은 종료 응용 프로그램 용이고 다른 하나는 URL로 리디렉션 용입니다.
대화 상자에 대화 상자가 표시되었습니다.
첫 번째 대화 상자가 팝업되면 사용자가 URL을 리디렉션 할 때 URL이 리디렉션됩니다.
하지만 사용자가 뒤로 버튼을 누르면 취소해야하고 뒤로 버튼 클릭시 종료 대화 상자 만 표시하려고합니다.
여기 내 코드입니다.
boolean flag = false;
@Override
public void onBackPressed() {
if (flag) {
super.onBackPressed();
} else {
final AlertDialog.Builder alert = new AlertDialog.Builder(
MainActivity.this);
alert.setMessage("EXIT"); // Message
// here
alert.setPositiveButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
AlertDialog.Builder exitdialog = new AlertDialog.Builder(
MainActivity.this);
exitdialog
.setMessage("EXIT");
exitdialog.setTitle(R.string.app_name);
exitdialog.setIcon(R.drawable.logo);
exitdialog.setPositiveButton("NO",
new OnClickListener() {
@Override
public void onClick(
DialogInterface dialog,
int which) {
}
});
exitdialog.setNegativeButton("Yes",
new OnClickListener() {
@Override
public void onClick(
DialogInterface dialog,
int which) {
/*
* Intent i=new
* Intent(getApplicationContext
*(),MainActivity.class);
* startActivity(i);
*/
finishFromChild(getParent());
getIntent()
.setFlags(
Intent.FLAG_ACTIVITY_CLEAR_TOP);
finish();
}
});
AlertDialog alertDialog = exitdialog.create();
alertDialog.show();
}
});
alert.setNegativeButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
Intent viewTwitter = new Intent(
"android.intent.action.VIEW",
Uri.parse("URL"));
startActivity(viewTwitter);
overridePendingTransition(R.anim.fadein,
R.anim.fadeout);
}
});
final AlertDialog alertDialog = alert.create();
alertDialog.show();
}
내가 응용 프로그램을 종료 할 수 있어요 대답 – Furqan