Webmaster Workers utiliza cookies. Lea nuestra Política de Privacidad para obtener más información. Para eliminar este mensaje, haga clic en el siguiente botón: Acepto el uso de cookies


- Archivo strings.xml





El archivo strings.xml se utiliza para almacenar todas las constantes de cadenas de caracteres que se necesitan en un programa (por ejemplo las etiquetas de los objetos Button, los textos fijos de los controles TextView y todos los controles que muestran un texto fijo en el dispositivo)


La idea fundamental es tener todos los mensajes que muestra nuestra aplicación en un archivo (strings.xml)


Ya veremos en el próximo concepto que uno de las ventajas que presenta esta agrupación de string es la posibilidad de facilitar la implementación de aplicaciones en múltiples idiomas.



Problema:


Crear un proyecto que solicite la carga de dos valores. Mediante dos RadioButton permitir seleccionar si queremos sumar o restar. Cuando se presione un botón mostrar en un TextView el resultado de la operación.



1 - Creamos un proyecto llamado: proyecto045

Lo almacenamos en el paquete: com.androidya.proyecto045


El Plugin de Eclipse nos crea automáticamente el archivo strings.xml en la carpeta values que se encuentra en la carpeta res:



strings.xml

Si vemos en su interior podemos ver que ya define tres string llamados app_name, hello_world y menu_settings:


strings.xml



Lo que se encuentra entre las marcas string es lo que se visualizará, por ejemplo en la constante hello_world se almacena el valor "Hello world!". En este archivo crearemos todas las constantes a incluir en nuestro programa. Si vemos en la parte inferior de la ventana donde se visualiza el archivo xml hay una pestaña llamada Resource que nos permite ingresar las distintas constantes de una forma visual:


strings.xml

Creamos primero la interfaz visual disponiendo dos controles de tipo EditText, un RadioGroup con dos RadioButton, un Button y un TextView donde se muestra el resultado de la operación:


strings.xml



Ahora si crearemos los mensajes que mostrarán los dos RadioButton y el Button. Para esto seleccionamos el archivo strings y procedemos a crear las tres constantes:


Una vez que tenemos abierto el archivo strings.xml en modo "Resources" procedemos a presionar el botón "Add..." y seleccionamos "String":


strings.xml



Creamos los nombres de las constantes y los valores, por ejemplo para el mensaje que mostrará el primer RadioButton llamamos la constante con el nombre "radiosuma" y el valor que almacena es "Sumar"


strings.xml




De forma similar creamos las constantes "radioresta" con el valor "Restar" y el botón para operar lo llamamos "botonoperacion" con el valor "Operar". Si seleccionamos la pestaña strings.xml luego podemos ver las tres constantes que hemos creado :


strings.xml



Ahora debemos asociar estas constantes a los controles visuales. Seleccionamos el archivo activity_main.xml y seleccionamos primero el primer RadioButton y buscamos la propiedad Text, presionamos el botón que aparece a la derecha:


strings.xml



En este diálogo seleccionamos la constante de string que acabamos de crear ("radiosuma"):


strings.xml

Ahora tenemos asociada la constante "radiosuma" con la propiedad text del control RadioButton. Lo mismo podríamos haber hecho esto escribiendo en la propiedad @string/radiosuma (@string lo utilizamos para indicar que el siguiente dato después de la barra se trata de una constante definida en el archivo strings.xml)


Utilizar el diálogo de selección de recursos nos facilita no tener que recordar todas las constantes.


Lo mismo hacemos para asociar las constantes para el segundo RadioButton y el Button de operar. Es decir las propiedades text del radio1 debe quedar con el valor "@string/radioresta" y el valor de la propiedad text del objeto button1 debe ser "@string/botonoperacion"


Como vemos cuando asociamos las propiedades text de los controles con las constantes automáticamente vemos en pantalla que los textos de los controles se actualizan con los valores almacenados en dichas constantes.


Para que funcione nuestro programa inicializamos la propiedad On click del Button con el método que sumará o restará:


strings.xml

El código fuente del programa será:



package com.androidya.proyecto045;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.TextView;

public class MainActivity extends Activity {
EditText et1, et2;
RadioButton rb1, rb2;
TextView tv1;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et1 = (EditText) findViewById(R.id.editText1);
et2 = (EditText) findViewById(R.id.editText2);
rb1 = (RadioButton) findViewById(R.id.radio0);
rb2 = (RadioButton) findViewById(R.id.radio1);
tv1 = (TextView) findViewById(R.id.textView1);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

public void operar(View v) {
int v1 = Integer.parseInt(et1.getText().toString());
int v2 = Integer.parseInt(et2.getText().toString());
if (rb1.isChecked()) {
int suma = v1 + v2;
tv1.setText(String.valueOf(suma));
} else if (rb2.isChecked()) {
int resta = v1 - v2;
tv1.setText(String.valueOf(resta));
}
}

}

El resultado final del programa en el dispositivo es:


strings.xml

Este proyecto lo puede descargar en un zip desde este enlace:
proyecto045.zip



Opciones
Estadísticas
Creado 01.01.1970 a las 00:00 hs
Categoría Android

  • Medallas
  • 0
    Favoritos
  • 9616
    Visitas
  • 0
    Puntos
  • 0
    Seguidores
Comentarios
0
Cargando comentarios espera un momento...
No tienes permisos para comentar.

Para poder comentar necesitas estar Registrado. O.. ya tienes usuario? Logueate!
Autor del post
Ver perfil de Administrador Administrador
Hombre Administrador  Mensaje
43 1,352 1
Medallas
No tiene medallas
Tags
Posts relacionados