π€Android/Java
[Android] μλλ‘μ΄λ - AlertDialog μλ΄ νμ μ¬μ©νλ λ°©λ²
루리μΌγ
2023. 12. 23. 10:19
λ°μν
AlertDialogλ μλλ‘μ΄λ μ±μμ μ¬μ©μμκ² λ©μμ§, μλ¦Ό λλ μ νμ μμ²νκΈ° μν΄ νμ ννλ‘ λνλλ λν μμμ΄λ€. μ΄ λν μμλ μ¬μ©μμ μ£Όμλ₯Ό λκ³ , λ©μμ§λ₯Ό μ λ¬νκ±°λ μ¬μ©μλ‘λΆν° μ 보λ₯Ό μμ§νλ λ° μ¬μ©λλ€.
1. AlertDialog import
import androidx.appcompat.app.AlertDialog;
2. showAlertDialog() λ©μλ μμ±
- setCancelable(boolean cancelable): μ΄ λ©μλλ AlertDialogκ° μ·¨μ κ°λ₯νμ§ μ¬λΆλ₯Ό μ€μ νλ€.
μ·¨μ κ°λ₯ν κ²½μ° μ¬μ©μκ° λ€λ‘κ°κΈ° λ²νΌμ λλ₯΄κ±°λ λν μμ μΈλΆλ₯Ό ν°μΉνμ¬ λν μμλ₯Ό λ«μ μ μλ€.
trueλ‘ μ€μ νλ©΄ κ°λ₯νκ³ , falseλ‘ μ€μ νλ©΄ λ«ν μ μλ€. - setTitle(CharSequence title): μ΄ λ©μλλ AlertDialogμ μ λͺ©μ μ€μ νλ€. μ λͺ©μ AlertDialog μλ¨μ νμλλ ν μ€νΈλ€.
- setMessage(CharSequence message): μ΄ λ©μλλ AlertDialogμ λ©μμ§λ₯Ό μ€μ νλ€. λ©μμ§λ μ¬μ©μμκ² νμλλ μ£Όμ λ΄μ©μ μ€λͺ νλ ν μ€νΈλ€.
- setPositiveButton(CharSequence text, DialogInterface.OnClickListener listener): μ΄ λ©μλλ AlertDialogμ κΈμ μ μΈ λμμ μννλ λ²νΌμ μΆκ°νλ€. textλ λ²νΌμ νμλ ν μ€νΈμ΄κ³ , listenerλ λ²νΌμ ν΄λ¦νμ λ νΈμΆλλ λμμ μ μνλ€.
- setNegativeButton(CharSequence text, DialogInterface.OnClickListener listener): μ΄ λ©μλλ AlertDialogμ λΆμ μ μΈ λμμ μννλ λ²νΌμ μΆκ°νλ€. textλ λ²νΌμ νμλ ν μ€νΈμ΄κ³ , listenerλ λ²νΌμ ν΄λ¦νμ λ νΈμΆλλ λμμ μ μνλ€.
- show(): AlertDialogλ₯Ό νλ©΄μ νμνλ€. create() λ©μλλ‘ AlertDialogλ₯Ό λ§λ νμ μ΄ λ©μλλ₯Ό νΈμΆνμ¬ μ€μ λ‘ νλ©΄μ λνλΌ μ μλ€.
private void showAlertDialog(){
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
// μ΄ λ€μ΄μΌλ‘κ·Έμ μΈκ³½ λΆλΆμ λλ μ λ, μ¬λΌμ§μ§ μλλ‘ νλ μ½λ
builder.setCancelable(false); // true : μ·¨μ ν λ // false : μ·¨μ μλ λ
builder.setTitle("ν΄μ¦ λ.");
builder.setMessage("ν΄μ¦κ° λͺ¨λ λλ¬μ΅λλ€.λ§μΆ μ λ΅μ "+count+"κ°μ
λλ€.\n λ€μ μμνμκ² μ΅λκΉ?");
builder.setPositiveButton("νμΈ", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
currentIndex = 0;
count =0;
Quiz quiz = quizArrayList.get(currentIndex);
txtQuiz.setText(quiz.question);
progressBar.setProgress(currentIndex+1);
txtResult.setText("κ²°κ³Ό");
// recreate();
// progressBar.setProgress(0);
}
}); // κΈμ λ²νΌ.
builder.setNegativeButton("μ·¨μ", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// νμ¬ μ΄ μ‘ν°λΉν°λ₯Ό μ’
λ£νλ€. => μ‘ν°λΉν°κ° 1κ°λ©΄, μ±μ΄ μ’
λ£.
finish();
}
}); // λΆμ λ²νΌ.
builder.show();
}
2. νμΈ
λ°μν