2015-02-06 134 views
0

如何從一個AlertDialog獲取AlertDialog選擇項目

AlertDialog.Builder b = new AlertDialog.Builder(SettingsCustom.this); 
b.setTitle("Example"); 
String[] types = {"Item 1","Item 2","Item 3" }; 
b.setItems(types, new DialogInterface.OnClickListener() { 

    @Override 
    public void onClick(DialogInterface dialogInterface, int which) { 
     dialogInterface.dismiss(); 

     //How to get the selected text 
    } 
}); 

b.show(); 

回答

0

獲得所選項目的文字我找到了一種方法。但不知道這是否是最好的方法。

AlertDialog.Builder b = new AlertDialog.Builder(SettingsCustom.this); 
b.setTitle("Example"); 
final String[] types = {"Item 1","Item 2","Item 3" }; 
b.setItems(types, new DialogInterface.OnClickListener() { 

    @Override 
    public void onClick(DialogInterface dialogInterface, int which) { 
     dialogInterface.dismiss(); 

     //How to get the selected text 
     Log.v("-----> " , "selected text = " + types[which]); 
    } 
}); 

b.show(); 
+0

是的,這是唯一的方法。 OnClickListener是**旨在**獲取'which'並進一步使用它 – sberezin 2015-02-06 11:57:19

0

您需要註冊DialogInterface.OnClickListener並使用setPostivie,setsinglechoice,setmultichoice等方法。