2016-05-03 20 views
0

Der folgende Code zeigt den Radio-Button mit AlertDialog Builder. Ich habe versucht herauszufinden, ob es möglich ist, einen Spinner unter dem Radio-Button hinzuzufügen? Ist dies unterstützt oder kann AlertDialog entweder für Radio-Button oder Spinner aber nicht beides verwendet werden?Android AlertDialog.Builder mit Radiobutton und Spinner

 // listItems has values "z","y","x" 
     final CharSequence[] avail_types = listItems.toArray(new CharSequence[listItems.size()]); 

     AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setTitle(" Select your choice "); 
     builder.setSingleChoiceItems(avail_types, -1, new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int item) { 
       selected_item = item; 
      } 
     }); 

     builder.setPositiveButton("Yes", 
       new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int id) { 
         //do_yes() 
        } 
       }); 

     AlertDialog alert = builder.create(); 
     alert.show(); 
+1

Sie haben den Alarm Dialog Inhalt für die Ansicht sowohl Spinner und Radioknopf anpassen. Die Verwendung von setSingleChoiceItems() funktioniert nicht –

+0

Danke für den Kommentar. Wird über Anpassung lesen. –

Antwort

1

Ich habe versucht, um herauszufinden, ist es möglich, einen Spinner unter der Radio-Button hinzufügen?

Nein, mit Standardimplementierung von setSingleChoiceItems Methode es nicht möglich ist, andere Ansichten in Alertdialog Layout hinzuzufügen.

Ist dies unterstützt oder kann AlertDialog entweder für Radio-Taste oder Spinner aber nicht beides verwendet werden?

Nein, aber Sie können eine benutzerdefinierte AlertDialog mit benutzerdefinierten Layout für sie mit ListView und Listview-Reihe Layout enthalten RadioButton und Spinner beide erstellen.

EDIT:

folgende Tutorial für das Erstellen Alertdialog mit benutzerdefinierten Layout:

Create AlertDialog with Custom Layout using XML Layout

+0

danke für die Antwort und die URL. Erstellt ein benutzerdefiniertes Layout. –