controles de seleccion
DESCRIPTION
Guia de programación androidTRANSCRIPT
1
Título: Controles de selección Tiempo de ejecución: 2 horas
I. OBJETIVOS
Que el participante aprenda a: Implementar Controles de selección Construir adaptadores en Android
II. DESARROLLO
Ejercicio 1 Utilización de Spinner
Cree un nuevo proyecto Android con el nombre Selectores Diseñe la siguiente pantalla en activity_main
Los controles a utilizar son:
GUÍA No. 06
DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES
2
Control Propiedad Valor
TextView Text Conversion de velocidad
Id tvEncabezado
Edittext Text 0.0
Id edOrigen
Input Type Number
TextView Text Resultado
Id tvResultado
Spinner Id spSelector
Ingrese el siguiente archivo en res/values con el nombre valores.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="valores_array">
<item>Millas a Km</item>
<item>Km a Millas</item>
</string-array>
</resources>
Adicione las siguientes variables de clase //Declaracion de variables de clase
Spinner spSelector;
TextView tvResultado;
EditText edOrigen;
Ingrese el siguiente código para relacionar los controles
//Referencia a controles
edOrigen=(EditText)findViewById(R.id.edOrigen);
tvResultado=(TextView)findViewById(R.id.tvResultado);
spSelector=(Spinner)findViewById(R.id.spSelector);
Ingrese el siguiente codigo para crear el adaptador //Adaptador para Spinner
ArrayAdapter<CharSequence> adapter=
ArrayAdapter.createFromResource(this,
R.array.valores_array, android.R.layout.simple_spinner_dropdown_item);
//referencia para el adaptador
3
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_
item);
spSelector.setAdapter(adapter);
Implemente la clase OnItemSelectedListener para capturar las selecciones del
control Adicione los métodos no implementados para corregir el error que aparece Ingrese el siguiente método para controlar el evento de cambios al control Spinner
//Metodo de accion en caso de seleccion
spSelector.setOnItemSelectedListener(
new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent,
android.view.View v, int position, long id) {
double conversion=0.0;
double
valor=Double.parseDouble(edOrigen.getText().toString());
if(spSelector.getSelectedItemId()==0)
//Kilometros a Millas
conversion=valor*1.6093;
else
conversion=valor*0.62;
tvResultado.setText("El resultado es:"+conversion);
}
public void onNothingSelected(AdapterView<?> parent) {
tvResultado.setText("");
}
});
III. ANALISIS DE RESULTADOS
1. Modifique el programa con los siguientes cambios:
a. Adicione los botones Procesar, limpiar y Salir a la aplicación
b. Pase el procesamiento del evento onItemSelected a un botón de comando
c. Adicione la funcionalidad de convertir de Millas a metros, el factor de
conversión es 1,6342
d. Adicione al tvResultado las unidades a las cuales está convirtiendo el
resultado
e. Cambie las opciones del Spinner de un XML que esta referenciado
actualmente a un arreglo
4
2. Realice el siguiente programa para calcular las áreas por figuras geométricas:
a. Las figuras para calcular sus áreas son: circulo (𝐴 = 𝜋𝑟2), rectángulo
(A=bxh), triangulo (A=(bxh)/2)
b. Se necesita utilizar un Spinner como selector
c. Cuando se seleccione un tipo de figura debe aparecer en un ImageView con
la figura respectiva
d. Cuando se seleccione un tipo de figura deben aparecer únicamente los
controles en los que se solicitaran los datos, por ejemplo s un circulo no
posee altura no debe aparecer visible el EditText para ingresar este dato. La
propiedad para mostrar u ocultar un control es setVisibility(View.INVISIBLE)
para ocultar y .setVisibility(View.VISIBLE) para mostrar;