安卓中关于dialog.builder问题
生活随笔
收集整理的這篇文章主要介紹了
安卓中关于dialog.builder问题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
我們?cè)谄綍r(shí)做開(kāi)發(fā)的時(shí)候,免不了會(huì)用到各種各樣的對(duì)話(huà)框,相信有過(guò)其他平臺(tái)開(kāi)發(fā)經(jīng)驗(yàn)的朋友都會(huì)知道,大部分的平臺(tái)都只提供了幾個(gè)最簡(jiǎn)單的實(shí)現(xiàn),如果我們想實(shí)現(xiàn)自己特定需求的對(duì)話(huà)框,大家可能首先會(huì)想到,通過(guò)繼承等方式,重寫(xiě)我們自己的對(duì)話(huà)框。當(dāng)然,這也是不失為一個(gè)不錯(cuò)的解決方式,但是一般的情況卻是這樣,我們重寫(xiě)的對(duì)話(huà)框,也許只在一個(gè)特定的地方會(huì)用到,為了這一次的使用,而去創(chuàng)建一個(gè)新類(lèi),往往有點(diǎn)殺雞用牛刀的感覺(jué),甚至?xí)?duì)我們的程序增加不必要的復(fù)雜性,對(duì)于這種情形的對(duì)話(huà)框有沒(méi)有更優(yōu)雅的解決方案呢??
? ? 幸運(yùn)的是,android提供了這種問(wèn)題的解決方案,剛開(kāi)始接觸android的時(shí)候,我在做一個(gè)自定義對(duì)話(huà)框的時(shí)候,也是通過(guò)繼承的方式來(lái)實(shí)現(xiàn),后來(lái)隨著對(duì)文檔了解的深入,發(fā)現(xiàn)了android起始已經(jīng)提供了相應(yīng)的接口Dialog Builder ,下面我就吧相關(guān)的內(nèi)容在這里分享一下,也能讓更多的初學(xué)者少走彎路。
首先是一個(gè)最簡(jiǎn)單的應(yīng)用,就是彈出一個(gè)消息框,在android中可以這樣實(shí)現(xiàn)
new AlertDialog.Builder(self)
?.setTitle("標(biāo)題")?
?.setMessage("簡(jiǎn)單消息框")
.setPositiveButton("確定", null)
.show();
#新建一個(gè)簡(jiǎn)單的對(duì)話(huà)框
new AlertDialog.Builder(self)?
.setTitle("確認(rèn)")
.setMessage("確定嗎?")
.setPositiveButton("是", null)
.setNegativeButton("否", null)
.show();
setPositiveButton :這個(gè)一般是確定的按鈕(傳遞信息,信息后面跟的邏輯)
setNegativeButton : 這個(gè)一般是取消的按鈕(傳遞信息,信息后面跟的邏輯)
##可以根據(jù)自己的需要在dialog中傳遞
本編輯框,任何的視圖對(duì)象,比如圖片框,WebView等
】
new AlertDialog.Builder(self)
.setTitle("請(qǐng)輸入")
.setIcon(android.R.drawable.ic_dialog_info)
.setView(new EditText(self))
.setPositiveButton("確定", null)
.setNegativeButton("取消", null)
.show();
##還可以在里面添加一個(gè)單選框或者多選框
| | new?AlertDialog.Builder(self) |
| | .setTitle("請(qǐng)選擇") |
| | .setIcon(android.R.drawable.ic_dialog_info)???????????????? |
| | .setSingleChoiceItems(new?String[] {"選項(xiàng)1","選項(xiàng)2","選項(xiàng)3","選項(xiàng)4"},?0,? |
| | ??new?DialogInterface.OnClickListener() { |
| | ?????????????????????????????? |
| | ?????public?void?onClick(DialogInterface dialog,?int?which) { |
| | ????????dialog.dismiss(); |
| | ?????} |
| | ??} |
| | ) |
| | .setNegativeButton("取消",?null) |
| | .show(); |
將setSingleChoiceItems(new?String[] {"選項(xiàng)1","選項(xiàng)2","選項(xiàng)3","選項(xiàng)4"},換成
setMultiChoiceItems(new?String[] {"選項(xiàng)1","選項(xiàng)2","選項(xiàng)3","選項(xiàng)4"}就變成了多選
##還有一個(gè)種是列表對(duì)話(huà)框
| 1 | new?AlertDialog.Builder(self) |
| 2 | .setTitle("列表框") |
| 3 | .setItems(new?String[] {"列表項(xiàng)1","列表項(xiàng)2","列表項(xiàng)3"},?null) |
| 4 | .setNegativeButton("確定",?null) |
| 5 | .show(); |
總結(jié)
以上是生活随笔為你收集整理的安卓中关于dialog.builder问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 春兰牌cl-ro-lry-1202型反渗
- 下一篇: LayoutInflater中调用系统服