![📱 Ejercicio.- Menú bancario en Android Studio 3ra parte con Interfaz Grafica [15] 1 Menú bancario en Android Studio 3ra parte con Interfaz Grafica](https://www.programadornovato.com/wp-content/uploads/2021/12/15-535x251.png)
📱 Ejercicio.- Menú bancario en Android Studio 3ra parte con Interfaz Grafica [15]
En este tutorial vamos a hacer la parte lógica de “Menú bancario en Android Studio 3ra parte con Interfaz Grafica” en donde realizaremos las operaciones de ingreso y retiro de dinero:
- Tendremos un saldo inicial.
- Al hacer click en ver saldo se colocar el saldo en el TextView.
- Al ingresar saldo y hacer click en ok se agregara ese saldo.
- Al retirar saldo y hacer click en ok se descontará ese saldo pero si se excede el saldo se negara el proceso.
- Al hacer click en salir cierra la aplicacion.
package com.programadornovato.miprimerproyecto
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.EditText
import android.widget.RadioButton
import android.widget.TextView
import android.widget.Toast
import java.math.BigDecimal
import kotlin.math.PI
import kotlin.math.round
class MainActivity : AppCompatActivity() {
private var rbVerSaldo:RadioButton?=null
private var rbIngresar:RadioButton?=null
private var rbRetirar:RadioButton?=null
private var rbSalir:RadioButton?=null
private var tvVerSaldo:TextView?=null
private var txtIngresar:EditText?=null
private var txtRetirar:EditText?=null
private var saldo=100.0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
rbVerSaldo=findViewById(R.id.rbVerSaldo)
rbIngresar=findViewById(R.id.rbIngresar)
rbRetirar=findViewById(R.id.rbRetirar)
rbSalir=findViewById(R.id.rbSalir)
tvVerSaldo=findViewById(R.id.tvVerSaldo)
txtIngresar=findViewById(R.id.txtIngresar)
txtRetirar=findViewById(R.id.txtRetirar)
}
fun accion(view: View){
tvVerSaldo?.visibility=View.INVISIBLE
txtIngresar?.visibility=View.INVISIBLE
txtRetirar?.visibility=View.INVISIBLE
if(rbVerSaldo?.isChecked()==true){
tvVerSaldo?.visibility=View.VISIBLE
tvVerSaldo?.text="Humano tu saldo es de ${saldo}"
}
if(rbIngresar?.isChecked()==true){
txtIngresar?.visibility=View.VISIBLE
}
if(rbRetirar?.isChecked()==true){
txtRetirar?.visibility=View.VISIBLE
}
if(rbSalir?.isChecked()==true){
tvVerSaldo?.visibility=View.VISIBLE
tvVerSaldo?.text="Adios humano"
}
}
fun btnOK(view:View){
tvVerSaldo?.visibility=View.INVISIBLE
txtIngresar?.visibility=View.INVISIBLE
txtRetirar?.visibility=View.INVISIBLE
if(rbVerSaldo?.isChecked()==true){
tvVerSaldo?.text="Humano tu saldo es de $saldo"
}
if(rbIngresar?.isChecked()==true){
var ingresar=txtIngresar?.text.toString().toDouble()
saldo=saldo+ingresar
tvVerSaldo?.text="Humano tu saldo es de $saldo"
tvVerSaldo?.visibility=View.VISIBLE
Toast.makeText(this,"Humano tu operacion se realizo de forma exitos",Toast.LENGTH_LONG).show()
}
if(rbRetirar?.isChecked()==true){
var retirar=txtRetirar?.text.toString().toDouble()
if(saldo-retirar < 0.0){
tvVerSaldo?.visibility=View.VISIBLE
tvVerSaldo?.text="Humano pillin no tienes tanto dinero"
}else{
saldo=saldo-retirar
tvVerSaldo?.text="Humano tu saldo es de $saldo"
tvVerSaldo?.visibility=View.VISIBLE
Toast.makeText(this,"Humano tu operacion se realizo de forma exitos",Toast.LENGTH_LONG).show()
}
}
if(rbSalir?.isChecked()==true){
tvVerSaldo?.visibility=View.VISIBLE
tvVerSaldo?.text="Adios humano"
finish()
System.exit(0)
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/txtViewResultado"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:layout_editor_absoluteY="590dp" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bienvenido al banco PN"
android:textSize="30sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/txtIngresar"
android:layout_width="400dp"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginLeft="24dp"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="¿Humano cunato dinero vas a ingresar?"
android:inputType="numberDecimal"
android:visibility="invisible"
app:layout_constraintStart_toEndOf="@+id/radioGroup"
app:layout_constraintTop_toBottomOf="@+id/tvVerSaldo" />
<RadioGroup
android:id="@+id/radioGroup"
android:layout_width="166dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="8dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView">
<RadioButton
android:id="@+id/rbVerSaldo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="accion"
android:text="Ver Saldo" />
<RadioButton
android:id="@+id/rbIngresar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="accion"
android:text="Ingresar" />
<RadioButton
android:id="@+id/rbRetirar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="accion"
android:text="Retirar" />
<RadioButton
android:id="@+id/rbSalir"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="accion"
android:text="Salir" />
</RadioGroup>
<TextView
android:id="@+id/tvVerSaldo"
android:layout_width="399dp"
android:layout_height="30dp"
android:layout_marginStart="24dp"
android:layout_marginLeft="24dp"
android:layout_marginTop="8dp"
android:textSize="18sp"
android:visibility="invisible"
app:layout_constraintStart_toEndOf="@+id/radioGroup"
app:layout_constraintTop_toBottomOf="@+id/textView" />
<EditText
android:id="@+id/txtRetirar"
android:layout_width="400dp"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginLeft="24dp"
android:layout_marginTop="32dp"
android:ems="10"
android:hint="¿Humano cuanto dinero vas a retirar?"
android:inputType="numberDecimal"
android:visibility="invisible"
app:layout_constraintStart_toEndOf="@+id/radioGroup"
app:layout_constraintTop_toBottomOf="@+id/txtIngresar" />
<Button
android:id="@+id/btnOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:layout_marginEnd="40dp"
android:layout_marginRight="40dp"
android:onClick="btnOK"
android:text="OK"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/txtRetirar" />
</androidx.constraintlayout.widget.ConstraintLayout>
🎦 Lista de reproducción de este curso: https://www.youtube.com/watch?v=3ZUlE_tvfaM&list=PLCTD_CpMeEKRL2-HaZThebGcyyR3_RshO&ab_channel=programadornovato
🎦 Curso de Android Studio: https://www.youtube.com/watch?v=AHyTqIB_8Rs&list=PLCTD_CpMeEKTT9pb9J-89j1SPtqHzU7sF&ab_channel=programadornovato
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF
🎦 [Curso] Kotlin de 0 a 100: https://www.youtube.com/playlist?list=PLCTD_CpMeEKSjzbsW_zmVNz23GyOVsdbS
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF
🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato
Anterior tutorial Siguiente tutorial
Ave que vuela, a la cazuela.