2013-05-05 31 views
63

我一直在四處搜尋,試圖找出如何創建一個彈出窗口或有4個選項可供選擇的對話框。Android:創建一個具有多個選擇選項的彈出框

我看到在Android開發者網站這樣的畫面:

enter image description here

有誰知道如何編寫起來有點像一個在右邊?我不需要任何圖標旁邊的文字,我只需要能夠從4個選項中選擇。

回答

204

setView()方法膨脹的看法,您可以創建一個CharSequence陣列選項您想要在那裏顯示,然後使用方法setItems(CharSequence[], DialogInterface.OnClickListener)將該陣列傳遞到AlertDialog.Builder

一個例子:

CharSequence colors[] = new CharSequence[] {"red", "green", "blue", "black"}; 

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
builder.setTitle("Pick a color"); 
builder.setItems(colors, new DialogInterface.OnClickListener() { 
    @Override 
    public void onClick(DialogInterface dialog, int which) { 
     // the user clicked on colors[which] 
    } 
}); 
builder.show(); 

輸出(在Android 4.0.3):(不包括背景地圖)

Output

+3

'.create() ''在這裏是不必要的,'.show()'將返回由構建器創建的對話框,然後顯示它。 – TronicZomB 2013-05-05 22:19:40

+1

你是對的。謝謝。 – zbr 2013-05-05 22:20:49

+2

非常感謝你。我真的不想爲一個簡單的文本菜單實現一個xml佈局,並且找不到一個簡單的方法來做到這一點,直到我偶然發現這篇文章。 – 2014-01-24 01:24:20

4

的彈出窗口都不過是AlertDialog。所以你只需要創建AlertDialog,然後使用LayoutInflater虛增您需要的視圖,並設置使用的AlertDialog

相關問題