__はじめてのAndroidアプリ開発__というテキストで勉強しているのですが、分からないことがありますので、こちらで質問させていただきます。
####やりたいこと
「はい」「いいえ」「キャンセル」ボタンのダイアログクリック時に「正解です!」「ミス」トーストの表示
####状況
「はい」「いいえ」「キャンセル」ダイアログは表示されるが、クリック時にトーストが表示されない。ダイアログクリック後は元の画面に戻ってしまう。
####ソースコード
Java
1package to.msn.wings.dialogbutton; 2 3import androidx.appcompat.app.AppCompatActivity; 4import android.os.Bundle; 5import android.view.View; 6import androidx.fragment.app.DialogFragment; 7 8 9public class MainActivity extends AppCompatActivity { 10 11 @Override 12 protected void onCreate(Bundle savedInstanceState) { 13 super.onCreate(savedInstanceState); 14 setContentView(R.layout.activity_main); 15 } 16 17 public void btn_onClick(View view) { 18 DialogFragment dialog = new MyDialogFragment(); 19 dialog.show(getSupportFragmentManager(), "dialog_button"); 20 } 21}
java
1package to.msn.wings.dialogbutton; 2 3import android.app.AlertDialog; 4import android.app.Dialog; 5import android.content.DialogInterface; 6import android.os.Bundle; 7import androidx.fragment.app.DialogFragment; 8import android.widget.Toast; 9 10public class MyDialogFragment extends DialogFragment { 11 @Override 12 public Dialog onCreateDialog(Bundle savedInstanceState) { 13 AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 14 return builder.setTitle("ダイアログの基本") 15 .setMessage("AndroidはJavaで開発できますか?") 16 .setIcon(R.drawable.wings) 17 .setPositiveButton("はい", 18 new DialogInterface.OnClickListener() { 19 public void onClick(DialogInterface dialog, int which) { 20 Toast.makeText(getActivity(), "正解です!", Toast.LENGTH_SHORT) 21 .show(); 22 } 23 } 24 ) 25 .setNegativeButton("いいえ", 26 new DialogInterface.OnClickListener() { 27 public void onClick(DialogInterface dialog, int which) { 28 Toast.makeText(getActivity(), "ミス!", Toast.LENGTH_SHORT) 29 .show(); 30 } 31 } 32 ) 33 .setNeutralButton("キャンセル", 34 new DialogInterface.OnClickListener() { 35 public void onClick(DialogInterface dialog, int which) { } 36 } 37 ) 38 .create(); 39 } 40} 41
xml
1<?xml version="1.0" encoding="utf-8"?> 2<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent"> 6 7 8 <Button 9 android:id="@+id/btn" 10 android:layout_width="match_parent" 11 android:layout_height="wrap_content" 12 android:onClick="btn_onClick" 13 android:text="ダイアログ表示" /> 14
どなたか分かりやすいアドバイスをお願いできませんでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/11 04:59
2021/01/11 05:05
2021/01/14 13:44
2021/01/14 14:06