每当我的警报对话框出现在屏幕上时,我可以点击它的外部,它就会消失,但我希望它不会在点击它的边界之外消失。这是我的警告对话框代码:
@Override
protected Dialog onCreateDialog(int id) {
Log.wtf("x", "on create dialog....");
AlertDialog.Builder adb = new AlertDialog.Builder(this);
win_lose_view = (RelativeLayout) getLayoutInflater().inflate(R.layout.win_lose_screen, null);
adb.setView(win_lose_view);
upper_text = (TextView) win_lose_view.findViewById(R.id.upper_text);
upper_text.setRotation(180);
lower_text = (TextView) win_lose_view.findViewById(R.id.lower_text);
upper_decide = (Button) win_lose_view.findViewById(R.id.upper_decide);
upper_decide.setRotation(180);
lower_decide = (Button) win_lose_view.findViewById(R.id.lower_decide);
return adb.create();
}
@Override
protected void onPrepareDialog(int id, Dialog dialog){
Log.wtf("x", "on prepare dialog...");
super.onPrepareDialog(id, dialog);
upper_decide = (Button) win_lose_view.findViewById(R.id.upper_decide);
upper_decide.setRotation(180);
lower_decide = (Button) win_lose_view.findViewById(R.id.lower_decide);
View.OnClickListener goBack = new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent goToChooseHero = new Intent(Battlefield.this, ChooseHero.class);
goToChooseHero.putExtra("username1", username1);
goToChooseHero.putExtra("username2", username2);
startActivity(goToChooseHero);
System.exit(1);
}
};
upper_decide.setOnClickListener(goBack);
lower_decide.setOnClickListener(goBack);
}
你试过创建对话框了吗
AlertDialog.Builder adb = new AlertDialog.Builder(this);
...
Dialog dialog = adb.create()
dialog.setCanceledOnTouchOutside(false);
return dialog;