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