app android minibanco

5
Banco Infantil En esta práctica vamos a crear un minibanco donde los niños muy peques puedan ingresar y retirar sus ahorros y practicar con los euros y céntimos de euro. Para ello desde Eclipse una nueva App Android.

Upload: jubacalo

Post on 25-May-2015

597 views

Category:

Education


1 download

TRANSCRIPT

Page 1: App Android MiniBanco

Banco Infantil

En esta práctica vamos a crear un minibanco donde los niños muy peques puedan ingresar y retirar sus ahorros y practicar con los euros y céntimos de euro. Para ello desde Eclipse una nueva App Android.

Page 2: App Android MiniBanco

MiniBanco.java package es.bitcoach.appbancorita; import java.text.DecimalFormat; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import android.app.Activity; import android.content.SharedPreferences; public class MiniBanco extends Activity { public static final String MISPREFERENCIAS = "MyPrefsFile"; float cantidad = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.mini_banco); final DecimalFormat formateador = new DecimalFormat("#####0.00"); final Button btnIngresar = (Button)findViewById(R.id.btnIngresar); final Button btnRetirar = (Button)findViewById(R.id.btnRetirar); final TextView lblTotal = (TextView)findViewById(R.id.lblTotal); final EditText txtImporte = (EditText)findViewById(R.id.txtImporte); // Restore preferences SharedPreferences settings = getSharedPreferences(MISPREFERENCIAS, 0); cantidad = settings.getFloat("CANTIDAD", 0); lblTotal.setText(formateador.format (cantidad) + " "); //-- Ingresar -------------------------------------------------- btnIngresar.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click if(txtImporte.length() == 0){ Toast notificacion = Toast.makeText(getApplicationContext(), "Pero RITA: Teclea una cantidad en Euros ...", Toast.LENGTH_SHORT); notificacion.show(); }else{ cantidad = cantidad + Float.parseFloat(txtImporte.getText().toString()); lblTotal.setText(formateador.format (cantidad) + " "); txtImporte.setText(""); } } }); //-- Ingresar --------------------------------------------------

Page 3: App Android MiniBanco

//-- Retirar --------------------------------------------------- btnRetirar.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click if(txtImporte.length() == 0){ Toast notificacion = Toast.makeText(getApplicationContext(), "Pero RITA: Teclea una cantidad en Euros ...", Toast.LENGTH_SHORT); notificacion.show(); }else{ cantidad = cantidad - Float.parseFloat(txtImporte.getText().toString()); lblTotal.setText(formateador.format (cantidad) + " "); txtImporte.setText(""); } } }); //-- Retirar --------------------------------------------------- } @Override protected void onStop(){ super.onStop(); SharedPreferences settings = getSharedPreferences(MISPREFERENCIAS, 0); SharedPreferences.Editor editor = settings.edit(); editor.putFloat("CANTIDAD", cantidad); editor.commit(); } }

En los métodos onCreate (recuperamos) y onStop (almacenamos), configuramos nuestras preferencias, utilizando la clase SharedPreferences, para almacenar el valor de la variable “cantidad” que representa la cantidad de euros disponible en el banco. De esta forma el almacenamiento de este dato será permanente (no se perderá al apagar la aplicación).

El dato se almacena en el archivo MyPrefsFile.xml que podemos localizar en Eclipse en la vista DDMS, seleccionando el device correspondiente y situándose en la pestaña File Explorer:

La ruta: data/data/(paquete)es.bitcoach.appbancorita/shared_prefs.

MyPrefsFile.xml

<?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <float name="CANTIDAD" value="10.0" /> </map>

Page 4: App Android MiniBanco

mini_banco.xml

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical"> <TextView android:layout_marginTop="25dip" android:textSize="12sp" android:text="@string/lblBanco" android:layout_height="wrap_content" android:layout_width="wrap_content" android:typeface="normal" android:layout_gravity="center" /> <TextView android:layout_marginTop="25dip" android:textSize="12sp" android:text="(Rita Cascallar Agra)" android:layout_height="wrap_content" android:layout_width="wrap_content" android:typeface="normal" android:layout_gravity="center" /> <TextView android:id="@+id/lblTotal" android:textSize="80sp" android:textColor="@color/azul" android:text="0.00 " android:layout_height="wrap_content" android:layout_width="wrap_content" android:typeface="serif" android:layout_gravity="center" /> <View android:layout_width="fill_parent" android:layout_height="5dip" android:background="#ff0000" /> <TextView android:layout_marginTop="10dip" android:textSize="12sp" android:text="@string/lblCajero" android:layout_height="wrap_content" android:layout_width="wrap_content" android:typeface="normal" android:layout_gravity="center" /> <EditText android:id="@+id/txtImporte" android:inputType="number|numberDecimal" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/linearLayout2" android:layout_width="match_parent" android:orientation="horizontal" android:layout_height="wrap_content"> <Button android:id="@+id/btnIngresar" android:layout_width="100sp" android:layout_height="100sp" android:text="Ingresar" /> <Button android:id="@+id/btnRetirar" android:layout_width="100sp" android:layout_height="100sp" android:text="Retirar" /> </LinearLayout> </LinearLayout>

Page 5: App Android MiniBanco

strings.xml <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">AppBancoRita</string> <string name="action_settings">Settings</string> <string name="lblBanco">DINERO QUE TENGO EN EL BANCO</string> <string name="lblCajero">CAJERO AUTOMÁTICO</string> </resources>

colores.xml <?xml version="1.0" encoding="UTF-8"?> <resources> <color name="rojo">#ff0000</color> <color name="verde">#00ff00</color> <color name="azul">#0000ff</color> </resources>

Resultado de la ejecución y estructura de la aplicación en Eclipse.