9 comentarios el “Ejemplo RadioGroup Android

    • Buenas Jorge,

      Efectivamente se puede, he hecho un código de ejemplo que quizás te sea de ayuda:

      <RadioGroup
              android:id="@+id/rdGrp"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:checkedButton="@+id/rd1" >
      
              <RadioButton
                  android:id="@+id/rd1"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:drawableRight="@drawable/radiobuton1" />
      
              <RadioButton
                  android:id="@+id/rd2"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:drawableRight="@drawable/radiobuton1" />
      
              <RadioButton
                  android:id="@+id/rd3"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:drawableRight="@drawable/radiobuton1" />
          </RadioGroup>
      

      Con el atributo android:drawableRight puedes poner una imagen en vez de texto para los RadioButton.

      Espero que sea de ayuda,

      Saludos

  1. Hola, intentando adaptar tu ejemplo en un desarrollo mio, al asignar el evento al radiogrup me salta el error » … OnCheckedChangeListener cannot be resolved to a type»
    Tengo importado android.widget.radiogroup

    Lo que si creo que puede estar el conflicto, es que no estoy utilizando una clase activity, sino una TabActivity.

    Puedes ayudarme?, desde ya, muchas Gracias,

    Saludos

    • Buenas Javier,

      No te preocupes por la TabActivity, es únicamente una clase que hereda de Activity, por tanto no existe problema alguno con ello.

      He probado en un momento por si acaso con una TabActivity y no me da problemas, por lo que creo que debe de ser algún paquete a importar.

      Prueba importando el siguiente:

      import android.widget.RadioGroup.OnCheckedChangeListener;
      

      Por si acaso, te dejo el código de ejemplo que he usado ahora mismo para probarlo todo:

      import android.app.TabActivity;
      import android.os.Bundle;
      import android.view.Menu;
      import android.widget.RadioGroup;
      import android.widget.RadioGroup.OnCheckedChangeListener;
      
      public class MainActivity extends TabActivity {
      	private RadioGroup rdGroup;
      
      	@Override
      	protected void onCreate(Bundle savedInstanceState) {
      		super.onCreate(savedInstanceState);
      		setContentView(R.layout.activity_main);
      
      		rdGroup = (RadioGroup) findViewById(R.id.rdGrp);
      		rdGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
      
      			@Override
      			public void onCheckedChanged(RadioGroup arg0, int arg1) {
      				// TODO Auto-generated method stub
      				
      				// Se comprueban los radioButton
      			}
      
      		});
      	}
      
      }
      

      Espero que te sea de ayuda, cualquier cosa no dudes en postear ;).

      Saludos!!!

  2. Hola David; Muchas gracias por tu respuesta.

    A la linea

    rdGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { ….

    la renombré

    rdgGrupo.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { …

    los errores desaparecieron pero la aplicación lanza el error «Unfortunately, ….. has stopped

    Estoy iniciandome en la programación android y estoy bastante verde con Eclipse, como puedo depurar el código para localizar el error?, he hecho doble click sobre la linea, la veo marcada pero no para en el punto.

    Un saludo

    • Buenas Javier,

      El primer paso para localizar los errores y depurarlos, es visualizar el LogCat, es una pequeña ventana donde se nos van anunciando todos los mensajes que tienen que ver ya sean con problemas en la aplicación, como mensajes que pongamos en la aplicación para consultar los valores de alguna variable.

      Normalmente se encuentra ubicado en la parte inferior de nuestro IDE: y está junto a otras pestañas:

      Ver foro Aquí

      Este es el primer lugar donde buscaremos el fallo, y donde una vez interpretado podemos buscar perfectamente el lugar donde ha ocurrido.

      Para sacar mensajes por el LogCat, también puedes agregar una linea en tu código, de las siguientes maneras:

      rdGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
      
      			@Override
      			public void onCheckedChanged(RadioGroup arg0, int arg1) {
      				// TODO Auto-generated method stub
      				
      				// Se comprueban los radioButton
      				Log.i("Informativo", "Esto genera una entrada en el LogCat");
      				Log.d("Debug", "Esto genera otro tipo de entrada en el LogCat");
      				Log.w("Warning", "Esto genera otro tipo de entrada en el LogCat");
      				Log.e("Error", "Esto muestra otro tipo de entrada en el LogCat");
      			}
      
      		});
      

      Como puedes ver, hay 4 métodos diferentes a los que podemos llamar, los cuales imprimirán en el LogCat un mensaje de un color diferente.

      Ver foto Aquí

      Esto son solo unos pasos básicos para depurar errores básicos, que espero para empezar te sean de ayuda.

      Saludos!

Replica a jorge Cancelar la respuesta