Capitulo 4 Android - CheckBox
Abrimos Eclipse y pinchamos en Archivo / Nuevo / Android Ap
Ponemos como nombre de aplicación CheckBox en package
ejemplos.android.
Damos nombre a la Activity, dejar el que pone por omision.
La actividad que crearemos tendra 3 textview, 2 edittext, 2 checkbox
y un boton.
Realizara la suma o resta de 2 numeros, para probar que pasa
al pulsar un checkbox y que la aplicación haga una u otra operación dependiendo
de la eleccion del usuario.
El ejemplo es igual al del capitulo anterior, eliminando los
radiobutton y poniendo los checkbox, asi como nombrarlos en el codigo, el resto
es igual.
Después de crear la pantalla principal y distribuir los
textview… y demas, señalamos el boton y buscamos su opcion Onclick (pulsando
con el boton derecho en el boton), le ponemos de nombre calcular, que después
utilizaremos en el codigo.
A los objetos insertados en la pantalla principal, les
ponemos el id para identificarlos en la aplicación (boton derecho) por ejemplo
a los textview les pongo tv1, tv2… a los edittext et1, et2, a los checkbox cb1,
cb2, al boton no hace falta porque ya hemos definido su accion onclick.
Pasamos al codigo siguiente en src mainactivity.java.
package
ejemplos.android;
import
android.os.Bundle;
import
android.app.Activity;
import android.view.Menu;
import
android.view.View;
import
android.widget.EditText;
import
android.widget.CheckBox;
import
android.widget.TextView;
public class
MainActivity extends Activity {
private EditText et1,et2;
private TextView tv3;
private CheckBox cb1,cb2;
/**
Called when the activity is first created. */
@Override
public void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et1=(EditText)findViewById(R.id.et1);
et2=(EditText)findViewById(R.id.et2);
tv3=(TextView)findViewById(R.id.tv3);
cb1=(CheckBox)findViewById(R.id.cb1);
cb2=(CheckBox)findViewById(R.id.cb2);
}
//Esta parte
se inicia al pulsar el boton
public void calcular(View
view) {
String valor1=et1.getText().toString();
String valor2=et2.getText().toString();
int num1=Integer.parseInt(valor1);
int num2=Integer.parseInt(valor2);
if (cb1.isChecked()==true) {
int suma=num1+num2;
String resultado=String.valueOf(suma);
tv3.setText(resultado);
} else
if (cb2.isChecked()==true) {
int resta=num1-num2;
String resultado=String.valueOf(resta);
tv3.setText(resultado);
}
}
}
En la primera
parte del codigo asignamos las variables a los objetos creados en la activity
como el edittext y los checkbox.
Una vez
asignados, ponemos el metodo que se ejecutara al pulsar el boton, dentro de
este metodo se asignan los numeros introducidos por el usuario a 2 variables,
convirtiendolos en numeros por si el usuario mete alguna letra.
Después el
metodo pasa a comprobar cual de los 2 checkbox ha pulsado el usuario y efectua
una u otra opcion y la muestra en el TextView resultado.
Oye pero si quieres seleccionar todas las casillas como para que te arroje todos los resultados
ResponderEliminarPues en el ejemplo solo hace falta que selecciones uno u otro, en el caso de que se quisiera y permitiera selecciones multiples, tendrias que cambiar el condicional if y prepararlo para indicar que hacer si se pulsan dos o mas opciones, en la parte de cb1 o cb2 cambiarlo.
EliminarEspero resuelva tus dudas. Gracias