溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android編程如何實(shí)現(xiàn)帶有單選按鈕和復(fù)選按鈕的dialog功能

發(fā)布時(shí)間:2021-07-10 10:28:03 來源:億速云 閱讀:140 作者:小新 欄目:移動開發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)Android編程如何實(shí)現(xiàn)帶有單選按鈕和復(fù)選按鈕的dialog功能,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

具體如下:

帶有單選按鈕的dialog:

package example.com.myapplication;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
  //聲明選中項(xiàng)變量
  private int selectedCityIndex = 0;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //定義城市數(shù)組
    final String[] arrayCity = new String[] { "杭州", "紐約", "威尼斯", "北海道" };
    //實(shí)例化AlertDialog對話框
    Dialog alertDialog = new AlertDialog.Builder(this)
        .setTitle("你最喜歡哪個地方?")            //設(shè)置標(biāo)題
        .setIcon(R.mipmap.ic_launcher)        //設(shè)置圖標(biāo)
        //設(shè)置對話框顯示一個單選List,指定默認(rèn)選中項(xiàng),同時(shí)設(shè)置監(jiān)聽事件處理
        .setSingleChoiceItems(arrayCity, 0, new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            selectedCityIndex = which;        //選中項(xiàng)的索引保存到選中項(xiàng)變量
          }
        })
        //添加取消按鈕并增加監(jiān)聽處理
        .setNegativeButton("取消", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
          }
        })
        //添加確定按鈕并增加監(jiān)聽處理
        .setPositiveButton("確認(rèn)", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(getApplication(), arrayCity[selectedCityIndex], Toast.LENGTH_SHORT).show();
          }
        })
        .create();
    alertDialog.show();
  }
}

帶有復(fù)選按鈕的dialog代碼:

package example.com.myapplication;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //定義運(yùn)動數(shù)組
    final String[] arraySport = new String[] { "足球", "籃球", "網(wǎng)球", "乒乓球" };
    final boolean[] arraySportSelected = new boolean[] {false, false, false, false};
    //實(shí)例化AlertDialog對話框
    Dialog alertDialog = new AlertDialog.Builder(this)
        .setTitle("你喜歡哪些運(yùn)動?")            //設(shè)置標(biāo)題
        .setIcon(R.mipmap.ic_launcher)        //設(shè)置圖標(biāo)
        //設(shè)置對話框顯示一個復(fù)選List,指定默認(rèn)選中項(xiàng),同時(shí)設(shè)置監(jiān)聽事件處理
        .setMultiChoiceItems(arraySport, arraySportSelected,
            new DialogInterface.OnMultiChoiceClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which, boolean isChecked) {
            arraySportSelected[which] = isChecked;       //選中項(xiàng)的布爾真假保存到選中項(xiàng)變量
          }
        })
        //添加取消按鈕并增加監(jiān)聽處理
        .setPositiveButton("確認(rèn)", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 0; i < arraySportSelected.length; i++) {
              if (arraySportSelected[i] == true){
                stringBuilder.append(arraySport[i] + "、");
              }
            }
            Toast.makeText(getApplication(), stringBuilder.toString(), Toast.LENGTH_SHORT).show();
          }
        })
        //添加確定按鈕并增加監(jiān)聽處理
        .setNegativeButton("取消", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
          }
        })
        .create();
    alertDialog.show();
  }
}

關(guān)于“Android編程如何實(shí)現(xiàn)帶有單選按鈕和復(fù)選按鈕的dialog功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI