Android
 Computer >> コンピューター >  >> プログラミング >> Android

【Android】アラートダイアログにラジオボタンリストを追加する方法

このチュートリアルでは、Androidのアラートダイアログ(AlertDialog)にラジオボタン形式の選択リストを追加する方法を解説します。ラジオボタンリストを使えば、複数の選択肢の中からユーザーにひとつだけ選ばせたい場面で、直感的なUIを簡単に実装できます。

ステップ1:新規プロジェクトの作成

まず、Android Studioで新しいプロジェクトを作成します。メニューから「File」⇒「New Project」を選択し、必要な項目をすべて入力してプロジェクトを作成しましょう。

ステップ2:レイアウトファイルの編集

res/layout/activity_main.xml に以下のコードを追加します。

<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "https://schemas.android.com/apk/res/android"
   android:layout_width = "match_parent"
   android:gravity = "center"
   android:layout_height = "match_parent">
   <TextView
      android:id = "@+id/click"
      android:layout_width = "wrap_content"
      android:textSize = "30sp"
      android:layout_height = "wrap_content"
      android:text = "Click"/>
</LinearLayout>

上記のコードでは、画面中央に配置されたTextViewを用意しています。このTextViewをタップするとアラートダイアログが表示される仕組みです。

ステップ3:MainActivity.java の実装

続いて、src/MainActivity.java に以下のコードを追加します。

package com.example.myapplication;
import android.annotation.TargetApi;
import android.content.DialogInterface;
import android.os.Build;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Switch;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
   TextView text;
   @TargetApi(Build.VERSION_CODES.LOLLIPOP)
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      text = findViewById(R.id.click);
      text.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            showAlertDialog();
         }
      });
   }
   private void showAlertDialog() {
      AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
      alertDialog.setTitle("AlertDialog");
      String[] items = {"java","android","Data Structures","HTML","CSS"};
      int checkedItem = 1;
      alertDialog.setSingleChoiceItems(items, checkedItem, new DialogInterface.OnClickListener() {
         @Override
         public void onClick(DialogInterface dialog, int which) {
            switch (which) {
               case 0:
                  Toast.makeText(MainActivity.this, "Clicked on java", Toast.LENGTH_LONG).show();
               break;
               case 1:
                  Toast.makeText(MainActivity.this, "Clicked on android", Toast.LENGTH_LONG).show();
               break;
               case 2:
                  Toast.makeText(MainActivity.this, "Clicked on Data Structures", Toast.LENGTH_LONG).show();
               break;
               case 3:
                  Toast.makeText(MainActivity.this, "Clicked on HTML", Toast.LENGTH_LONG).show();
               break;
               case 4:
                  Toast.makeText(MainActivity.this, "Clicked on CSS", Toast.LENGTH_LONG).show();
               break;
          }
         }
      });
      AlertDialog alert = alertDialog.create();
      alert.setCanceledOnTouchOutside(false);
      alert.show();
   }
}

ここでのポイントは setSingleChoiceItems() メソッドです。第1引数に表示する項目の配列、第2引数に初期選択状態にする項目のインデックス(この例では「android」が選ばれた状態)、第3引数に項目がクリックされた際のリスナーを渡します。また、setCanceledOnTouchOutside(false) を設定することで、ダイアログの外側をタップしてもダイアログが閉じないようにしています。

アプリの実行と動作確認

それではアプリケーションを実行してみましょう。実機のAndroidスマートフォンをパソコンに接続していることを前提としています。Android Studioからアプリを実行するには、プロジェクト内のアクティビティファイルを開き、ツールバーの実行アイコンをクリックします。接続したモバイルデバイスを選択すると、端末に次のような初期画面が表示されます。

【Android】アラートダイアログにラジオボタンリストを追加する方法

次に、画面上のTextViewをタップしてみてください。ラジオボタン付きのアラートダイアログが開き、各項目を選択すると対応するToastメッセージが表示されます。

【Android】アラートダイアログにラジオボタンリストを追加する方法

  1. AndroidのカスタムListViewに検索機能を実装する方法【サンプルコード付き】

    はじめに このチュートリアルでは、AndroidアプリのListView(リストビュー)に検索機能を実装する方法を解説します。EditTextに入力した文字列に応じて、表示中のリスト項目をリアルタイムで絞り込む仕組みを作成します。 手順1:新規プロジェクトを作成する Android Studioを開き、「File」→「New Project」を選択して、必要な項目をすべて入力し、新しいプロジェクトを作成します。 手順2:レイアウトファイル(activity_main.xml)を編集する res/layout/activity_main.xml に以下のコードを記述します。上部に検索ワードを入力

  2. Microsoft Word文書にラジオボタンを挿入する方法

    ラジオボタン(オプションボタン)は、Microsoft Wordに用意されているグラフィカルコントロール要素の一つで、事前に用意された選択肢の中から回答を選ばせることができます。主にアンケートやフォームなどで利用され、顧客や読者からのフィードバックを効率的に収集するのに役立ちます。 Word文書にラジオボタンを挿入する手順 以下の手順に従って、クリック操作が可能なラジオボタンをWord文書に挿入しましょう。 Wordを起動します。 リボンの「開発」タブをクリックします。 「コントロール」グループにある「レガシーツール」ボタンをクリックし、表示されたメニューから「オプションボタン」を選択します