日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

AlertDialog的六種創(chuàng)建方式

 落雨不悔 2019-04-17

創(chuàng)建AlertDialog的步驟:

  1、創(chuàng)建AlertDialog.Builder對象

  2、調(diào)用Builder對象的setTitle方法設(shè)置標(biāo)題,setIcon方法設(shè)置圖標(biāo)

  3、調(diào)用Builder相關(guān)方法如setMessage方法、setItems方法、setSingleChoiceItems方法、setMultiChoiceItems方法、setAdapter方法、setView方法設(shè)置不同類型的對話框內(nèi)容。

  4、調(diào)用setPositiveButton、setNegativeButton、setNeutralButton設(shè)置多個按鈕

  5、調(diào)用Builder對象的create()方法創(chuàng)建AlertDialog對象

  6、調(diào)用AlertDialog對象的show()方法將對話框顯示出來

一、setMessage:設(shè)置對話框內(nèi)容為簡單文本內(nèi)容

復(fù)制代碼
    // 創(chuàng)建構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        // 設(shè)置參數(shù)
        builder.setTitle("請做出選擇").setIcon(R.drawable.ic_launcher)
                .setMessage("我美不美")
                .setPositiveButton("美", new OnClickListener() {// 積極

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                Toast.makeText(MainActivity.this, "恭喜你答對了", 0)
                                        .show();
                            }
                        }).setNegativeButton("不美", new OnClickListener() {// 消極

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                Toast.makeText(MainActivity.this, "一點(diǎn)也不老實", 0)
                                        .show();
                            }
                        }).setNeutralButton("不知道", new OnClickListener() {// 中間級

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                Toast.makeText(MainActivity.this, "快睜開眼瞅瞅", 0)
                                        .show();
                            }
                        });
        builder.create().show();
復(fù)制代碼

運(yùn)行截圖:

        

二、setItem:設(shè)置文本框內(nèi)容為簡單列表項

 

復(fù)制代碼
    // 創(chuàng)建數(shù)據(jù)
        final String[] items = new String[] { "北京", "上海", "廣州", "深圳" };
        // 創(chuàng)建對話框構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        // 設(shè)置參數(shù)
        builder.setIcon(R.drawable.ic_launcher).setTitle("提示")
                .setItems(items, new OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(MainActivity.this, items[which],
                                Toast.LENGTH_SHORT).show();
                    }
                });
        builder.create().show();
復(fù)制代碼

運(yùn)行截圖:

        

 

三、setSingleChoiceItems()設(shè)置對話框內(nèi)容為單選列表項

復(fù)制代碼
    // 創(chuàng)建數(shù)據(jù)
        final String[] items = new String[] { "北京", "上海", "廣州", "深圳" };
        // 創(chuàng)建對話框構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        // 設(shè)置參數(shù)
        builder.setIcon(R.drawable.ic_launcher).setTitle("提示")
                .setSingleChoiceItems(items, 0, new OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                        Toast.makeText(MainActivity.this, items[which],
                                Toast.LENGTH_SHORT).show();
                    }
                });
        builder.create().show();
復(fù)制代碼

運(yùn)行截圖:

        

四、setMultiChoiceItems()設(shè)置對話框內(nèi)容為多選項列表

復(fù)制代碼
    // 創(chuàng)建數(shù)據(jù)
        final String[] items = new String[] { "北京", "上海", "廣州", "深圳" };
        // 創(chuàng)建對話框構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setIcon(R.drawable.ic_launcher)
                .setTitle("提示")
                .setMultiChoiceItems(items,
                        new boolean[] { true, true, false, false, false },
                        new OnMultiChoiceClickListener() {

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which, boolean isChecked) {
                                // TODO Auto-generated method stub
                                if (isChecked) {
                                    Toast.makeText(MainActivity.this,
                                            items[which], 0).show();
                                }
                            }
                        });
        builder.create().show();
復(fù)制代碼

運(yùn)行截圖:

        

五、setAdapter()設(shè)置對話框內(nèi)容為自定義列表項(這里是一個布局)

復(fù)制代碼
    // 創(chuàng)建數(shù)據(jù)
        final String[] items = new String[] { "北京", "上海", "廣州", "深圳" };
        // 創(chuàng)建對話框構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("提示")
                .setIcon(R.drawable.ic_launcher)
                .setAdapter(
                        new ArrayAdapter<String>(MainActivity.this,
                                R.layout.item, R.id.tv, items),
                        new OnClickListener() {

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                Toast.makeText(MainActivity.this, items[which],
                                        0).show();
                            }
                        });
        builder.create().show();
復(fù)制代碼

運(yùn)行截圖:

        

六、setView()設(shè)置對話框為自定義View

復(fù)制代碼
    // 創(chuàng)建對話框構(gòu)建器
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        // 獲取布局
        View view2 = View.inflate(MainActivity.this, R.layout.login, null);
        // 獲取布局中的控件
        final EditText username = (EditText) view2.findViewById(R.id.username);
        final EditText password = (EditText) view2.findViewById(R.id.password);
        final Button button = (Button) view2.findViewById(R.id.btn_login);
        // 設(shè)置參數(shù)
        builder.setTitle("Login").setIcon(R.drawable.ic_launcher)
                .setView(view2);
        // 創(chuàng)建對話框
        final AlertDialog alertDialog = builder.create();
        button.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                String uname = username.getText().toString().trim();
                String psd = password.getText().toString().trim();
                if (uname.equals("shenhua") && psd.equals("123456")) {
                    Toast.makeText(MainActivity.this, "登錄成功", 0).show();
                }
                Toast.makeText(MainActivity.this, "登錄失敗", 0).show();
                alertDialog.dismiss();// 對話框消失
            }

        });
        alertDialog.show();
復(fù)制代碼

運(yùn)行截圖:

        

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多