보여드리죠.
new AlertDialog.Builder(MainActivity.getMainView().getContext()).setTitle("TITLE")
.setMessage("Do you wanna exit the game?").setPositiveButton("Yes", new AlertDialog.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
onPause();
System.exit(0);
}
}).setNegativeButton("No", new AlertDialog.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).show();
이렇게 바로 사용하셔도 되구요.
class TextInputDialog extends AlertDialog {
private String text;
private EditText txtInput;
private boolean actived;
private AlertDialog dialog;
public TextInputDialog(Context context) {
super(context);
init(context);
}
public void init(Context ct) {
txtInput = new EditText(ct);
AlertDialog.Builder builder = new AlertDialog.Builder(ct);
builder.setTitle("YOUR NAME");
builder.setView(txtInput);
builder.setPositiveButton("OK", new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
text = txtInput.getText().toString();
dialog.dismiss();
}
}).setNegativeButton("CANCEL", new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
text = null;
dialog.dismiss();
}
}).setOnCancelListener(new OnCancelListener() {
public void onCancel(DialogInterface dialog) {
text = null;
dialog.dismiss();
}
});
dialog = builder.create();
dialog.setCanceledOnTouchOutside(false);
}
public void show() {
this.show("");
}
public void show(String defaultText) {
txtInput.setText(defaultText);
dialog.show();
actived = true;
}
public String getInputText() {
actived = false;
return text;
}
public boolean isActived() { return actived; }
}
이렇게 클래스로 따로 만들어두셔서 쓰셔도됩니다.
(저건 제가 코딩해서 쓰고있는 텍스트 입력을 받는 다이얼 로그 클래스의 일부입니다.)