Академический Документы
Профессиональный Документы
Культура Документы
btn.setCompoundDrawablesWithIntrinsicBounds(
0, // left
R.drawable.ic_launcher, // top
0,// right
0); // bottom
import android.app.Activity;
import android.os.Bundle;
import android.widget.CheckBox;
import android.widget.CompoundButton;
public class MainActivity extends Activity {
private CheckBox cb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
cb = (CheckBox) findViewById(R.id.checkBox);
cb.setOnCheckedChangeListener(new
CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton,
boolean b) {
if (b = true) {
// botn marcado
} else {
// botn desmarcado
}
}
});
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
public class MainActivity extends Activity {
private CheckBox cb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onClickCheckBox(View v) {
boolean check = ((CheckBox) v).isChecked();
if (check) {
//el botn ha sido activado
}
}
}
EL EVENTO onLongClick();
El mtodo onLongClick() es utilizado cuando el usuario realice una pulsacin larga sobre alguno de
nuestros botones. Se implementa de la misma forma que onClick(), la diferencia fundamental es
que retorna un valor booleano que debemos establecerlo en true si no queremos que
seguidamente se ejecute el onClick.
Adaptadores Android
Antes de ver los controles de seleccin, es necesario entender qu son y para qu se utilizan los
adaptadores.
ADAPTADORES
Los controles de seleccin como pueden ser el ListView, GridView, Spinner y Gallery, muestran
una coleccin de datos, sin embargo, usan un control o controles bsicos para mostrar la
informacin. Por ejemplo, un ListView podra mostrar una lista de ciudades, pero para mostrar el
nombre de la ciudad usa un TextView. Podemos considerar, que los controles de seleccin son
contenedores de un grupo de controles hijos.
Android asigna la responsabilidad del manejo de la coleccin de datos (la lista de nombres de
ciudades) al adaptador y adems proporcionar el View para cada item de la coleccin de datos.
Una imgen vale ms que mil palabras...
Ejemplo de adaptador
ADAPTADORES MS USADOS
ArrayAdapter<T>: Es el ms simple de los adaptadores en android, podemos utilizarlo con un
array de objetos, por defecto, usar la funcin toString del objeto para construir el View. En muchos
casos no ser suficiente con este adaptador para nuestras necesidades, y necesitaremos crear
uno propio, sobrescribiendo el mtodo getView como veremos en prximos tutoriales.
SimpleAdapter: suele utilizarse para datos estticos, cuando creamos un array de valores en un
XML.
Veamos estos controles en su forma ms sencilla, para poder verlos despus de forma
ms avanzada en los siguientes tutoriales.
LISTVIEW
Veamos el cdigo:
Se ha declarado un array de Strings por ser la forma ms comn, en este caso colores (ya me
cans de los pases), pero como vimos en el apartado de adaptadores, el ArrayAdapter admite
GRIDVIEW
SPINNER
Un Spinner es una lista desplegable, aunque podramos hacer de forma similiar al ListView, con
este control es necesario decirle al adaptador, que layout va a mostrar cuando se despliegue la
lista,
por
defecto android.R.layout.simple_spinner_dropdown_item mediante
el
mtodo adapter.setDropDownViewResource().
Por variar un poco, utilizar el fichero Strings.xml para obtener el listado de colores.
Strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Spinner</string>
<string name="action_settings">Settings</string>
<string-array name="colores">
</resources>
MainActivity.java:
public class MainActivity extends Activity {
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spnn.setAdapter(adapter);
}
}
RADIOBUTTON
Cada RadioButton es un control que puede tener 2 estados, es similar al CheckBox pero en este
caso el usuario slo puede pulsar sobre una de las opciones.
RadioButton debe estar contenido dentro de un RadioGroup como vemos en la siguiente imagen:
Android Studio por defecto no aade un id a nuestro RadioGroup. Recuerda que para aadirlo es
necesario utilizar @+id/ quedando as la propiedad id: @+id/radioGroup
Aunque podramos establecer la propiedad android:onclick para cada RadioButton, y mediante el id
saber cual ha marcado el usuario, (como en el tutorial de los botones) podemos utilizar un listener
directamente en el RadioGroup, como veremos en el cdigo:
Toast.makeText(getApplicationContext(),"RadioButon3
Activo",Toast.LENGTH_SHORT).show();
break;
}
}
});
}
Y con los RadioButton, finalizo el tutorial, veremos en siguientes cmo personalizar estos controles
para manejarlos a nuestro antojo y personalizarlos muchsimo