2011-07-11 10 views
25

Deseo crear una serie de botones de opción que correspondan a una matriz de cadenas dentro de una aplicación de Android. Los botones de radio deben alternar el contenido que se mostrará desde la matriz. ¿Cómo hago esto?Creación de programas de radio de forma programática

+0

¿Ha hecho algo hasta ahora. Nos muestran su progreso, así que podemos ayudarle a –

Respuesta

58

Debe agregar los botones de selección para una RadioGroup y luego el RadioGroup a la layout

Echo de menos alguna información como lo que es presente, pero su código debe ser similar:

private void createRadioButton() { 
    final RadioButton[] rb = new RadioButton[5]; 
    RadioGroup rg = new RadioGroup(this); //create the RadioGroup 
    rg.setOrientation(RadioGroup.HORIZONTAL);//or RadioGroup.VERTICAL 
    for(int i=0; i<5; i++){ 
     rb[i] = new RadioButton(this); 
     rg.addView(rb[i]); //the RadioButtons are added to the radioGroup instead of the layout 
     rb[i].setText("Test"); 
    } 
    ll.addView(rg);//you add the whole RadioGroup to the layout 
    ll.addView(submit); 
    submit.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      for(int i = 0; i < 5; i++) { 
       rg.removeView(rb[i]);//now the RadioButtons are in the RadioGroup 
      } 
      ll.removeView(submit); 
      Questions(); 
     } 
    }); 
} 

Otro código para crear dinámicamente el Código radiobutton

<TableRow> 
    <RadioGroup 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:id="@+id/radiobuttons"> 
    </RadioGroup> 
</TableRow> 

:

public void makeRadioButtons(Vector tmpVector, int i, LinearLayout.LayoutParams lp) 
{ 
    RadioButton rb = new RadioButton(this); 
    rb.setText((String) tmpVector.elementAt(i)); 
    //rg is private member of class which refers to the radio group which I find 
    //by id. 
    rg.addView(rb, 0, lp); 

} 
+0

lo que es ** ** ** en ll ll.removeView (enviar); **? – partho

+0

@partho Supongo que representa una instancia 'LinearLayout'? – stkent

Cuestiones relacionadas