SlideShare une entreprise Scribd logo
1  sur  5
Télécharger pour lire hors ligne
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.
MiniBanco.java
package es.bitcoach.appbancorita;
import java.text.DecimalFormat;
import
import
import
import
import
import
import
import

android.os.Bundle;
android.view.View;
android.widget.Button;
android.widget.EditText;
android.widget.TextView;
android.widget.Toast;
android.app.Activity;
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
final
final
final
final

DecimalFormat formateador = new DecimalFormat("#####0.00");
Button btnIngresar = (Button)findViewById(R.id.btnIngresar);
Button btnRetirar = (Button)findViewById(R.id.btnRetirar);
TextView lblTotal = (TextView)findViewById(R.id.lblTotal);
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 --------------------------------------------------
//-- 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>
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>
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.

Contenu connexe

Tendances

Tendances (20)

Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTML
 
Práctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScriptPráctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScript
 
Conectar java con una base de datos
Conectar java con una base de datosConectar java con una base de datos
Conectar java con una base de datos
 
Uso java jdbc
Uso java jdbcUso java jdbc
Uso java jdbc
 
Continuación 3 de la creación de reportes con jasper report
Continuación 3 de la creación de reportes con jasper reportContinuación 3 de la creación de reportes con jasper report
Continuación 3 de la creación de reportes con jasper report
 
SALUDOS EN INGLES
SALUDOS EN INGLESSALUDOS EN INGLES
SALUDOS EN INGLES
 
Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012
 
Ejemplo de base de datos y reports con jasper report
Ejemplo de base de datos y reports con jasper reportEjemplo de base de datos y reports con jasper report
Ejemplo de base de datos y reports con jasper report
 
Java web Lección 04 - JSTL
Java web Lección 04 - JSTLJava web Lección 04 - JSTL
Java web Lección 04 - JSTL
 
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11
CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11CONECTAR  C# CON POSTGRESQL  USANDO NPGSQL 2.0.11
CONECTAR C# CON POSTGRESQL USANDO NPGSQL 2.0.11
 
Conceptos basicos en CakePHP
Conceptos basicos en CakePHPConceptos basicos en CakePHP
Conceptos basicos en CakePHP
 
Java Web Lección 02 - JSP
Java Web Lección 02 - JSPJava Web Lección 02 - JSP
Java Web Lección 02 - JSP
 
Presentación1
Presentación1Presentación1
Presentación1
 
Java Web 00 - Contexto
Java Web 00 - ContextoJava Web 00 - Contexto
Java Web 00 - Contexto
 
Objetos implícitos en jsp
Objetos implícitos en jspObjetos implícitos en jsp
Objetos implícitos en jsp
 
Jsp servlet- Tutorial BD Conexión
Jsp servlet- Tutorial BD ConexiónJsp servlet- Tutorial BD Conexión
Jsp servlet- Tutorial BD Conexión
 
4. insertar datos
4.  insertar datos4.  insertar datos
4. insertar datos
 
Java web 01 - servlets
Java web 01 - servletsJava web 01 - servlets
Java web 01 - servlets
 
Usando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPUsando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHP
 
Connection
ConnectionConnection
Connection
 

En vedette

MIT App Inventor2 Pintar en Imagen
MIT App Inventor2 Pintar en ImagenMIT App Inventor2 Pintar en Imagen
MIT App Inventor2 Pintar en Imagen
jubacalo
 
Java Thread Cronometro
Java Thread CronometroJava Thread Cronometro
Java Thread Cronometro
jubacalo
 
Sincronizar Threads
Sincronizar ThreadsSincronizar Threads
Sincronizar Threads
jubacalo
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
jubacalo
 
2.3 ejercicio hotel sol y playa-
2.3 ejercicio   hotel sol y playa-2.3 ejercicio   hotel sol y playa-
2.3 ejercicio hotel sol y playa-
Alejandra Ceballos
 
Java HashMap
Java HashMapJava HashMap
Java HashMap
jubacalo
 
Funciones lógicas y condicionales
Funciones lógicas y condicionalesFunciones lógicas y condicionales
Funciones lógicas y condicionales
jubacalo
 
Excel regresión
Excel regresiónExcel regresión
Excel regresión
jubacalo
 
Práctica Completa en Access
Práctica Completa en AccessPráctica Completa en Access
Práctica Completa en Access
jubacalo
 

En vedette (16)

Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2
 
MIT App Inventor2 Pintar en Imagen
MIT App Inventor2 Pintar en ImagenMIT App Inventor2 Pintar en Imagen
MIT App Inventor2 Pintar en Imagen
 
jQuery Mobile :: Enlaces a páginas internas.
jQuery Mobile :: Enlaces a páginas internas.jQuery Mobile :: Enlaces a páginas internas.
jQuery Mobile :: Enlaces a páginas internas.
 
Configurar entorno Android
Configurar entorno AndroidConfigurar entorno Android
Configurar entorno Android
 
jQuery Mobile :: Cuadros de diálogo
jQuery Mobile :: Cuadros de diálogojQuery Mobile :: Cuadros de diálogo
jQuery Mobile :: Cuadros de diálogo
 
Java AWT Calculadora
Java AWT CalculadoraJava AWT Calculadora
Java AWT Calculadora
 
Java Thread Cronometro
Java Thread CronometroJava Thread Cronometro
Java Thread Cronometro
 
Java AWT Tres en Raya
Java AWT Tres en RayaJava AWT Tres en Raya
Java AWT Tres en Raya
 
Word VBA
Word VBAWord VBA
Word VBA
 
Sincronizar Threads
Sincronizar ThreadsSincronizar Threads
Sincronizar Threads
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
 
2.3 ejercicio hotel sol y playa-
2.3 ejercicio   hotel sol y playa-2.3 ejercicio   hotel sol y playa-
2.3 ejercicio hotel sol y playa-
 
Java HashMap
Java HashMapJava HashMap
Java HashMap
 
Funciones lógicas y condicionales
Funciones lógicas y condicionalesFunciones lógicas y condicionales
Funciones lógicas y condicionales
 
Excel regresión
Excel regresiónExcel regresión
Excel regresión
 
Práctica Completa en Access
Práctica Completa en AccessPráctica Completa en Access
Práctica Completa en Access
 

Similaire à App Android MiniBanco

Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con AndroidTutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Luis Ernesto Castillo Alfaro
 

Similaire à App Android MiniBanco (20)

Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
 
Clase 1 Programacion Android
Clase 1 Programacion AndroidClase 1 Programacion Android
Clase 1 Programacion Android
 
Practicas android studio efrain (1)
Practicas android studio efrain (1)Practicas android studio efrain (1)
Practicas android studio efrain (1)
 
Reportes de practicas
Reportes de practicasReportes de practicas
Reportes de practicas
 
Troston lulu
Troston luluTroston lulu
Troston lulu
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"
 
Practicas android studio efrain
Practicas android studio efrainPracticas android studio efrain
Practicas android studio efrain
 
Practicas android studio efrain
Practicas android studio efrainPracticas android studio efrain
Practicas android studio efrain
 
TEMAS DE JAVA DEL 11 AL 23
TEMAS DE JAVA DEL 11 AL 23TEMAS DE JAVA DEL 11 AL 23
TEMAS DE JAVA DEL 11 AL 23
 
Hola mundo
Hola mundoHola mundo
Hola mundo
 
Workshop de Android Wear impartido en el Codemotion 2014
Workshop de Android Wear impartido en el Codemotion 2014Workshop de Android Wear impartido en el Codemotion 2014
Workshop de Android Wear impartido en el Codemotion 2014
 
Carlos blanco resumen mm android controles 10pag v5
Carlos blanco resumen mm android controles 10pag v5Carlos blanco resumen mm android controles 10pag v5
Carlos blanco resumen mm android controles 10pag v5
 
Examen programación
Examen programaciónExamen programación
Examen programación
 
Codificación-HolaMundo
Codificación-HolaMundoCodificación-HolaMundo
Codificación-HolaMundo
 
Android bootcamp 101 v2.0
Android bootcamp 101 v2.0Android bootcamp 101 v2.0
Android bootcamp 101 v2.0
 
Codemotion 2017 - Taller de JHipster
Codemotion 2017 - Taller de JHipsterCodemotion 2017 - Taller de JHipster
Codemotion 2017 - Taller de JHipster
 
Presentación de Android Wear impartida en el GDG Devfest Barcelona 2015
Presentación de Android Wear impartida en el GDG Devfest Barcelona 2015Presentación de Android Wear impartida en el GDG Devfest Barcelona 2015
Presentación de Android Wear impartida en el GDG Devfest Barcelona 2015
 
Hola mundo1
Hola mundo1Hola mundo1
Hola mundo1
 
Documento de eloy
Documento de eloyDocumento de eloy
Documento de eloy
 
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con AndroidTutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
Tutorial Nro. 2 de Desarollo de Aplicaciones Móviles con Android
 

Plus de jubacalo (10)

Proyecto JSP
Proyecto JSPProyecto JSP
Proyecto JSP
 
Crear Base de Datos en Oracle
Crear Base de Datos en OracleCrear Base de Datos en Oracle
Crear Base de Datos en Oracle
 
Escenarios
EscenariosEscenarios
Escenarios
 
Matrices02
Matrices02Matrices02
Matrices02
 
Gráficos
GráficosGráficos
Gráficos
 
Tabla Dinámica
Tabla DinámicaTabla Dinámica
Tabla Dinámica
 
Tabla de Datos
Tabla de DatosTabla de Datos
Tabla de Datos
 
Textura de agua
Textura de aguaTextura de agua
Textura de agua
 
Solver
SolverSolver
Solver
 
Java Thread Cronometro
Java Thread CronometroJava Thread Cronometro
Java Thread Cronometro
 

Dernier

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
jlorentemartos
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
El Fortí
 

Dernier (20)

Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 

App Android MiniBanco

  • 1. 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.
  • 2. MiniBanco.java package es.bitcoach.appbancorita; import java.text.DecimalFormat; import import import import import import import import android.os.Bundle; android.view.View; android.widget.Button; android.widget.EditText; android.widget.TextView; android.widget.Toast; android.app.Activity; 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 final final final final DecimalFormat formateador = new DecimalFormat("#####0.00"); Button btnIngresar = (Button)findViewById(R.id.btnIngresar); Button btnRetirar = (Button)findViewById(R.id.btnRetirar); TextView lblTotal = (TextView)findViewById(R.id.lblTotal); 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 --------------------------------------------------
  • 3. //-- 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>
  • 4. 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>
  • 5. 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.