今天就跟大家聊聊有關(guān)怎么在Android中使用AlertDialog創(chuàng)建一個(gè)對(duì)話(huà)框,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
發(fā)展壯大離不開(kāi)廣大客戶(hù)長(zhǎng)期以來(lái)的信賴(lài)與支持,我們將始終秉承“誠(chéng)信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠(chéng)服務(wù)每家企業(yè),認(rèn)真做好每個(gè)細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及成都服務(wù)器托管等,在成都網(wǎng)站建設(shè)公司、全網(wǎng)營(yíng)銷(xiāo)推廣、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開(kāi)發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。AlertDialog不僅可以生成帶按鈕的提示對(duì)話(huà)框,還可以生成帶列表的列表對(duì)話(huà)框,概括起來(lái)有一下4種:
1.帶確定、中立和取消等N個(gè)按鈕的提示對(duì)話(huà)框,其中的按鈕個(gè)數(shù)不是固定的,可以根據(jù)需要添加。例如,不需要中立按鈕,則可以只生成帶有確定和取消按鈕的對(duì)話(huà)框,也可以是只需有一個(gè)按鈕的對(duì)話(huà)框。
2.帶列表的列表對(duì)話(huà)框
3.帶多個(gè)單選列表項(xiàng)和N個(gè)按鈕的列表對(duì)話(huà)框
4.帶多個(gè)多選列表項(xiàng)和N個(gè)按鈕的列表對(duì)話(huà)框
在使用AlertDialog類(lèi)生成對(duì)話(huà)框時(shí),常用的方法如下所示:
setTitle :為對(duì)話(huà)框設(shè)置標(biāo)題
setIcon :為對(duì)話(huà)框設(shè)置圖標(biāo)
setMessage:為對(duì)話(huà)框設(shè)置內(nèi)容
setButton:用于為提示對(duì)話(huà)框添加按鈕,可以是取消按鈕、中立按鈕和確定按鈕。需要通過(guò)為其指定int類(lèi)型的whichButton參數(shù)實(shí)現(xiàn),其參數(shù)可以是DialogInterface.BUTTON_POSITIVE(確定按鈕)、BUTTON_NEGATIVE(取消按鈕)或者BUTTON_NEUTRAL(中立按鈕)。
通常情況下,使用AlertDialog類(lèi)只能生成帶N個(gè)按鈕的提示對(duì)話(huà)框,要生成另外3種列表對(duì)話(huà)框,需要使用AlertDialog.Builder類(lèi),AlertDialog.Builder類(lèi)提供的常用方法如下表:
setTitle :為對(duì)話(huà)框設(shè)置標(biāo)題
setIcon :為對(duì)話(huà)框設(shè)置圖標(biāo)
setMessage:為對(duì)話(huà)框設(shè)置內(nèi)容
setView : 給對(duì)話(huà)框設(shè)置自定義樣式
setItems :設(shè)置對(duì)話(huà)框要顯示的一個(gè)list,一般用于顯示幾個(gè)命令時(shí)
setSingleChoiceItems :用來(lái)設(shè)置對(duì)話(huà)框顯示一系列的單選框
setMultiChoiceItems :用來(lái)設(shè)置對(duì)話(huà)框顯示一系列的復(fù)選框
setNeutralButton :普通按鈕
setPositiveButton :給對(duì)話(huà)框添加"Yes"按鈕
setNegativeButton :對(duì)話(huà)框添加"No"按鈕
create : 創(chuàng)建對(duì)話(huà)框
show :顯示對(duì)話(huà)框
下面通過(guò)一個(gè)具體的實(shí)例說(shuō)明如何使用AlertDialog類(lèi)生成提示對(duì)話(huà)框和各種列表對(duì)話(huà)框
res/layout/main.xml:
界面為圖
MainActivity:
package com.example.test; import android.app.Activity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.content.DialogInterface.OnMultiChoiceClickListener; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { private boolean[] checkedItems;//記錄各個(gè)列表項(xiàng)的狀態(tài) private String[] items;//各列表項(xiàng)要顯示的內(nèi)容 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //顯示帶取消、中立和確定按鈕的對(duì)話(huà)框 Button button1=(Button)findViewById(R.id.button1); button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { AlertDialog alert=new AlertDialog.Builder(MainActivity.this).create(); alert.setIcon(R.drawable.ic_launcher);//設(shè)置對(duì)話(huà)框的圖標(biāo) alert.setTitle("系統(tǒng)提示");//設(shè)置對(duì)話(huà)框的標(biāo)題 alert.setMessage("顯示帶取消、中立和確定按鈕的對(duì)話(huà)框!");//設(shè)置對(duì)話(huà)框顯示的內(nèi)容 //添加“取消”按鈕 alert.setButton(DialogInterface.BUTTON_NEGATIVE, "取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog,int which) { Toast.makeText(MainActivity.this, "您單擊了取消按鈕", Toast.LENGTH_SHORT).show(); } }); //添加“確定”按鈕 alert.setButton(DialogInterface.BUTTON_POSITIVE, "確定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog,int which) { Toast.makeText(MainActivity.this, "您單擊了確定按鈕", Toast.LENGTH_SHORT).show(); } }); //添加“中立”按鈕 alert.setButton(DialogInterface.BUTTON_NEUTRAL, "中立", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog,int which) { Toast.makeText(MainActivity.this, "您單擊了中立按鈕", Toast.LENGTH_SHORT).show(); } }); alert.show();//顯示對(duì)話(huà)框 } }); //顯示列表的對(duì)話(huà)框 Button button2=(Button)findViewById(R.id.button2); button2.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { final String[] items=new String[]{"唱歌","跳舞","美術(shù)","遠(yuǎn)足旅行","攝影"}; Builder builder=new AlertDialog.Builder(MainActivity.this); builder.setIcon(R.drawable.in); builder.setTitle("請(qǐng)選擇你的愛(ài)好:"); //添加列表項(xiàng) builder.setItems(items, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, "您選擇了"+items[which],Toast.LENGTH_SHORT).show(); } }); builder.create().show();//創(chuàng)建對(duì)話(huà)框并顯示 } }); //顯示帶單選列表對(duì)話(huà)框 Button button3=(Button)findViewById(R.id.button3); button3.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { final String[] items=new String[]{"標(biāo)準(zhǔn)","無(wú)聲","會(huì)議","戶(hù)外","離線(xiàn)"}; Builder builder=new AlertDialog.Builder(MainActivity.this); builder.setIcon(R.drawable.music); builder.setTitle("請(qǐng)選擇要使用的情景模式:"); builder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener(){ @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, "您選擇了"+items[which],Toast.LENGTH_SHORT).show(); } }); builder.setPositiveButton("確定", null); builder.create().show();//創(chuàng)建對(duì)話(huà)框并顯示 } }); //顯示帶多選列表對(duì)話(huà)框 Button button4=(Button)findViewById(R.id.button4); button4.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { checkedItems =new boolean[]{false,true,false,true,false};//記錄各列表的狀態(tài) //各列表項(xiàng)要顯示的內(nèi)容 items=new String[]{"植物大戰(zhàn)僵尸","憤怒的小鳥(niǎo)","泡泡龍","開(kāi)心消消樂(lè)","地鐵跑酷"}; //顯示帶單選列表框的對(duì)話(huà)框 Builder builder=new AlertDialog.Builder(MainActivity.this); builder.setIcon(R.drawable.setting); builder.setTitle("請(qǐng)選擇您喜歡的游戲:"); builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { checkedItems[which]=isChecked; } }); //為對(duì)話(huà)框添加"確定"按鈕 builder.setPositiveButton("確定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String result=""; for (int i = 0; i看完上述內(nèi)容,你們對(duì)怎么在Android中使用AlertDialog創(chuàng)建一個(gè)對(duì)話(huà)框有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
新聞標(biāo)題:怎么在Android中使用AlertDialog創(chuàng)建一個(gè)對(duì)話(huà)框-創(chuàng)新互聯(lián)
URL地址:http://weahome.cn/article/dgiodh.html