Я пытаюсь сделать AlertDialog внутри AlertDialog, но когда я запускаю код, то secound AlertDialog вратаря появляютсяAlertDialog внутри AlertDialog
Это мой код, я хочу, чтобы это сделать, как если пользователь нажимает отменить в сначала появится AlertDialog, появится второй AlertDialog, пользователь может набрать его имя и оба балла, и имя перейдет к ScoreActivity, используя intern.
void generateAlertDialog(final long timeSpent) {
// 1. Instantiate an AlertDialog.Builder with its constructor
AlertDialog.Builder builder = new AlertDialog.Builder(
GameActivity.this);
// 2. Chain together various setter methods to set the dialog
// characteristics
builder.setMessage(
"The time stayed in the game is " + timeSpent + "s")
.setTitle("You Lose!!")
.setPositiveButton("Replay",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
// User clicked OK button
finish();
Intent intent = new Intent(getApplicationContext(), GameActivity.class);
startActivity(intent);
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
AlertDialog.Builder builder2 = new AlertDialog.Builder(
GameActivity.this);
builder2.setMessage(
"Please input you name")
.setTitle("Score");
final EditText input = new EditText(GameActivity.this);
input.setInputType(InputType.TYPE_CLASS_TEXT);
builder2.setView(input);
builder2.setPositiveButton("Show Score LIst",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
finish();
Intent intent = new Intent(getApplicationContext(), ScoreActivity.class);
m_Text = input.getText().toString();
intent.putExtra("name", m_Text);
intent.putExtra("result", timeSpent);
startActivity(intent);
}
});
builder2.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
finish();
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
});
// User cancelled the dialog
}
});
// 3. Get the AlertDialogfrom create()
AlertDialog dialog = builder.create();
// 4. Show dialog
dialog.show();
}
Вы пытаетесь изменить 'AlertDialog.Builder builder2 = new AlertDialog.Builder ( GameActivity.this);' to' AlertDialog.Builder builder2 = new AlertDialog.Builder (this); ' –