【Android】AlertDialog對話框

1.普通的:
這裏寫圖片描述

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setIcon(R.mipmap.ic_launcher);
            builder.setTitle("提醒:");
            builder.setMessage("確定刪除?");
            builder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                   //TODO
                }
            });
            builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.setNeutralButton("忽略", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.show();

2. 列表:

這裏寫圖片描述

AlertDialog.Builder 
            builder=new AlertDialog.Builder(MainActivity.this);
            builder.setIcon(R.mipmap.ic_launcher);
            builder.setTitle("選擇:");
            //    指定下拉列表的顯示數據
            final String[] day= {"星期一", "星期二", "星期三", "星期四", "星期五","星期六","星期日"};
            //    設置一個下拉的列表選擇項
            builder.setItems(day, new DialogInterface.OnClickListener()
            {
                @Override
                public void onClick(DialogInterface dialog, int i)
                {
                    Toast.makeText(MainActivity.this, "選擇的是:" + day[i], Toast.LENGTH_SHORT).show();
                }
            });
            builder.show();

3.包含單選框
這裏寫圖片描述

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setIcon(R.mipmap.ic_launcher);
            builder.setTitle("請選擇性別");
            final String[] sex = {"男", "女"};
            /**
             * 第一個參數:數據集合
             * 第二個參數:默認勾選
             * 第三個參數:綁定監聽器
             */
            builder.setSingleChoiceItems(sex, 1, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    Toast.makeText(MainActivity.this, "性別:" + sex[i], Toast.LENGTH_SHORT).show();
                }
            });
            builder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.show();

4.包含CheckBox
這裏寫圖片描述

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setIcon(R.mipmap.ic_launcher);
            builder.setTitle("水果");
            final String[] hobbies = {"蘋果", "香蕉", "菠蘿", "橘子"};
            //Boolean[] select={true,false,false,true};
            /**
             * 第一個參數:數據集合
             * 第二個參數:如果是null,則一個都不選擇,指定多個被選擇,則傳遞一個Boolean數組進去
             * 第三個參數:綁定監聽器
             */
            builder.setMultiChoiceItems(hobbies, null, new DialogInterface.OnMultiChoiceClickListener() {
                StringBuffer stringBuffer = new StringBuffer(100);
                @Override
                public void onClick(DialogInterface dialog, int i, boolean isChecked) {
                    if(isChecked) {
                        stringBuffer.append(hobbies[i] + ", ");
                    }
                    Toast.makeText(MainActivity.this, "愛好爲:" + stringBuffer.toString(), Toast.LENGTH_SHORT).show();
                }
            });
            builder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                    //TODO
                }
            });
            builder.show();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章