Diferencia entre revisiones de «RadioButton»
Ir a la navegación
Ir a la búsqueda
(Página creada con «==Introdución== *O control '''RadioButton''' permite escoller unha opción entre varias posibles. *Aconséllase usar este control sempre que se queiran amosar ao usuario m...») |
|||
| Línea 24: | Línea 24: | ||
==Caso práctico== | ==Caso práctico== | ||
| − | * | + | |
| + | * Partimos que xa temos creado o proxecto inicial como [http://wiki.cifprodolfoucha.es/index.php?title=PDM_Creando_proxecto_base 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: '''RadioButtons'''. | ||
| + | |||
| + | |||
| + | <br /> | ||
| + | * Dentro do paquete '''RadioButtons''' crear unha nova 'Empty Activity' de nome: '''UD02_01_RadioButtons''' de tipo Launcher e sen compatibilidade. | ||
| + | : Modifica o arquivo '''AndroidManifiest.xml''' e engade unha label á activity como [http://wiki.cifprodolfoucha.es/index.php?title=PDM_Creando_proxecto_base xa vimos na creación do proxecto base]. | ||
| + | |||
| + | |||
*Imos crear unha aplicación na que o usuario indique se é ou non maior de idade e que se amose a opción escollida no EditText. | *Imos crear unha aplicación na que o usuario indique se é ou non maior de idade e que se amose a opción escollida no EditText. | ||
Revisión del 16:43 6 oct 2018
Introdución
- O control RadioButton permite escoller unha opción entre varias posibles.
- Aconséllase usar este control sempre que se queiran amosar ao usuario múltiples opcións, unha ao carón doutra.
- En caso contrario débese usar un Spinner (Lista despregable).
- No layout os RadioButton organízanse dentro dun RadioGroup que vai controlar que non haxa máis dunha opción marcada.
- Nota: polas opcións que ofrece a imaxe, tomada de Android SDK, aí debe traballar un galego.
- RadioGroup herda da clase LinearLayout co cal terá as súas propiedades, entre elas: android:orientation
- RadioButton herda da clase CompoundButton ao igual que CheckBox. Por tanto, teremos dispoñible a propiedade android:onCLick.
- Imaxe obtida de: http://www.itcsolutions.eu/2011/08/27/android-tutorial-4-procedural-vs-declarative-design-of-user-interfaces
- Referencias:
- Control RadioButton: http://developer.android.com/reference/android/widget/RadioButton.html
- Control RadioGroup: http://developer.android.com/reference/android/widget/RadioGroup.html
- Introdución ao control: http://developer.android.com/guide/topics/ui/controls/radiobutton.html
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: RadioButtons.
- Dentro do paquete RadioButtons crear unha nova 'Empty Activity' de nome: UD02_01_RadioButtons 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.
- Imos crear unha aplicación na que o usuario indique se é ou non maior de idade e que se amose a opción escollida no EditText.
- RadioButton
XML do Layout
- Observar como RadioGroup é un layout máis de tipo Linear.
- Observar como a primeira opción está activada por defecto.
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 android:layout_width="match_parent"
3 android:layout_height="match_parent"
4 android:orientation="vertical" >
5
6 <RadioGroup
7 android:layout_width="fill_parent"
8 android:layout_height="wrap_content"
9 android:orientation="vertical" >
10
11 <RadioButton
12 android:id="@+id/rbtn_maior18"
13 android:layout_width="wrap_content"
14 android:layout_height="wrap_content"
15 android:checked="true"
16 android:onClick="controlarIdade"
17 android:text=">18 anos" />
18
19 <RadioButton
20 android:id="@+id/rbtn_menor18"
21 android:layout_width="wrap_content"
22 android:layout_height="wrap_content"
23 android:onClick="controlarIdade"
24 android:text="<=18 anos" />
25 </RadioGroup>
26
27 <EditText
28 android:id="@+id/txt_resultado"
29 android:layout_width="match_parent"
30 android:layout_height="wrap_content"
31 android:hint="Resultado" />
32
33 </LinearLayout>
Código Java
- Implementamos o método controlarIdade
1 package com.example.u2_11_radiobutton;
2
3 import android.app.Activity;
4 import android.os.Bundle;
5 import android.view.Menu;
6 import android.view.View;
7 import android.widget.EditText;
8
9 public class U2_11_RadioButton extends Activity {
10
11 @Override
12 protected void onCreate(Bundle savedInstanceState) {
13 super.onCreate(savedInstanceState);
14 setContentView(R.layout.activity_u2_11__radio_button);
15 }
16
17 @Override
18 public boolean onCreateOptionsMenu(Menu menu) {
19 // Inflate the menu; this adds items to the action bar if it is present.
20 getMenuInflater().inflate(R.menu.u2_11__radio_button, menu);
21 return true;
22 }
23
24 public void controlarIdade(View view) {
25
26 EditText caixa = (EditText) findViewById(R.id.txt_resultado);
27
28 switch (view.getId()) {
29 case R.id.rbtn_maior18:
30 caixa.setText("Tes máis de 18 anos");
31 break;
32 case R.id.rbtn_menor18:
33 caixa.setText("Tes menos de 18 anos");
34 break;
35 }
36 }
37 }
- Liña 30: Indagamos que cal é o ID da opción na que se fixo click.
-- Ángel D. Fernández González e Carlos Carrión Álvarez -- (2015).