Diferencia entre revisiones de «Spinner»
Ir a la navegación
Ir a la búsqueda
| (No se muestran 8 ediciones intermedias de 2 usuarios) | |||
| Línea 4: | Línea 4: | ||
| − | |||
| Línea 28: | Línea 27: | ||
<br /> | <br /> | ||
| − | *Nunha primeira versión imos crear unha aplicación que | + | *Nunha primeira versión imos crear unha aplicación na que se carguen nun spinner a lista de planetas definidos nun arquivo de recursos. |
| − | |||
<gallery caption="Spinner Planetas" widths="350" heights="300px" perrow="2"> | <gallery caption="Spinner Planetas" widths="350" heights="300px" perrow="2"> | ||
Image:PDM_spinner_7.jpg| Aplicación recén iniciada. | Image:PDM_spinner_7.jpg| Aplicación recén iniciada. | ||
| − | Image:PDM_spinner_8.jpg| Seleccionar Xúpiter (5º elemento da lista) | + | Image:PDM_spinner_8.jpg| Seleccionar Xúpiter (5º elemento da lista). |
| − | |||
</gallery> | </gallery> | ||
| Línea 88: | Línea 85: | ||
android:layout_height="wrap_content" | android:layout_height="wrap_content" | ||
android:entries="@array/planetas_UD02_01_spinner" /> | android:entries="@array/planetas_UD02_01_spinner" /> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
</LinearLayout> | </LinearLayout> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
*'''Liña 12''': é onde se vincula o Spinner co recurso tipo array: planetas. | *'''Liña 12''': é onde se vincula o Spinner co recurso tipo array: planetas. | ||
| − | |||
<br /> | <br /> | ||
| + | '''[https://wiki.cifprodolfoucha.es/index.php?title=Programaci%C3%B3n_de_dispositivos_m%C3%B3biles#UNIDADE_2:_A_interface_de_usuario. Enlace a la página principal de la UD2]''' | ||
| + | <br /> | ||
| + | <br /> | ||
| + | '''[https://wiki.cifprodolfoucha.es/index.php?title=Programación_de_dispositivos_móbiles Enlace a la página principal del curso]''' | ||
| + | <br /> | ||
| + | |||
| + | |||
| + | |||
| + | <br> -- [[Usuario:angelfg|Ángel D. Fernández González]] e [[Usuario:Carrion|Carlos Carrión Álvarez]] -- (2015). | ||
| + | |||
===Código Java=== | ===Código Java=== | ||
| − | <syntaxhighlight lang="java" line highlight=" | + | <syntaxhighlight lang="java" line highlight="19"> |
package es.cursoandroid.cifprodolfoucha.aprendiendo.UI.Spinners; | package es.cursoandroid.cifprodolfoucha.aprendiendo.UI.Spinners; | ||
| Línea 125: | Línea 118: | ||
public class UD02_01_Spinners extends Activity { | public class UD02_01_Spinners extends Activity { | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| Línea 144: | Línea 128: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | :* Liñas | + | :* Liñas 19: Cargamos o Layout onde se atopa o Spinner. |
| − | |||
<br /> | <br /> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | : Veremos máis adiante na sección do Spinner como xestionar o spinner (recuperar o elemento seleccionado, capturar o evento de seleccionar un elemento da lista,...) | |
| − | |||
| − | |||
| − | |||
| − | + | * A captura de eventos empregando este control o veremos na [https://wiki.cifprodolfoucha.es/index.php?title=Spinner_con_Adaptadores sección de adaptadores do Spinner]. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | * Indicar que nas propiedades do Spinner temos a propiedade '''SpinnerMode''' que permite que cando se preme na lista, apareza unha caixa de diálogo cos elementos do spinner (opción '''dilaog''''). | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Revisión actual del 12:57 21 nov 2020
Sumario
Introdución
- Un Spinner é unha lista despregable de opcións na que o usuario pode escoller unha delas.
- Unha forma estática de definir os datos que van encher o Spinner é usando un arquivo de recursos de tipo String-array:
- Referencias
Caso práctico
- Partimos que xa temos creado o proxecto inicial como xa indicamos anteriormente.
- Se non o temos creado antes, crea un paquete de nome UI como un subpaquete do teu paquete principal.
- Dentro do paquete UI, crearemos un novo paquete de nome: Spinners.
- Dentro do paquete Spinners crear unha nova 'Empty Activity' de nome: UD02_01_Spinners de tipo Launcher e sen compatibilidade.
- Modifica o arquivo AndroidManifiest.xml e engade unha label á activity como xa vimos na creación do proxecto base.
- Nunha primeira versión imos crear unha aplicación na que se carguen nun spinner a lista de planetas definidos nun arquivo de recursos.
- Spinner Planetas
Arquivo de recursos: String-Array
- Crear array
- Ficheiro de recursos: array_planetas.xml.
- Polo nome do string_array é por onde se vai acceder ao array.
1 <?xml version="1.0" encoding="utf-8"?>
2 <resources>
3 <string-array name="planetas_UD02_01_spinner">
4 <item>Mercurio</item>
5 <item>Venus</item>
6 <item>Terra</item>
7 <item>Marte</item>
8 <item>Xúpiter</item>
9 <item>Saturno</item>
10 <item>Urano</item>
11 <item>Neptuno</item>
12 </string-array>
13 </resources>
XML do Layout
- Observar como se crea un Spinner
1 <?xml version="1.0" encoding="utf-8"?>
2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 xmlns:tools="http://schemas.android.com/tools"
4 android:layout_width="match_parent"
5 android:layout_height="match_parent"
6 android:orientation="vertical" >
7
8 <Spinner
9 android:id="@+id/spnPlanetas_UD02_01_spinners"
10 android:layout_width="wrap_content"
11 android:layout_height="wrap_content"
12 android:entries="@array/planetas_UD02_01_spinner" />
13
14 </LinearLayout>
- Liña 12: é onde se vincula o Spinner co recurso tipo array: planetas.
Enlace a la página principal de la UD2
Enlace a la página principal del curso
-- Ángel D. Fernández González e Carlos Carrión Álvarez -- (2015).
Código Java
1 package es.cursoandroid.cifprodolfoucha.aprendiendo.UI.Spinners;
2
3 import android.app.Activity;
4 import android.os.Bundle;
5 import android.view.View;
6 import android.widget.AdapterView;
7 import android.widget.Spinner;
8 import android.widget.TextView;
9
10 import es.cursoandroid.cifprodolfoucha.aprendiendo.R;
11
12 public class UD02_01_Spinners extends Activity {
13
14
15
16 @Override
17 protected void onCreate(Bundle savedInstanceState) {
18 super.onCreate(savedInstanceState);
19 setContentView(R.layout.activity_ud02_01__spinners);
20
21 }
22 }
- Liñas 19: Cargamos o Layout onde se atopa o Spinner.
- Veremos máis adiante na sección do Spinner como xestionar o spinner (recuperar o elemento seleccionado, capturar o evento de seleccionar un elemento da lista,...)
- A captura de eventos empregando este control o veremos na sección de adaptadores do Spinner.
- Indicar que nas propiedades do Spinner temos a propiedade SpinnerMode que permite que cando se preme na lista, apareza unha caixa de diálogo cos elementos do spinner (opción dilaog').
-- Ángel D. Fernández González e Carlos Carrión Álvarez -- (2015).
