Menú bancario en Android Studio 3ra parte con Interfaz Grafica

📱 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.
Menú bancario en Android Studio 3ra parte con Interfaz Grafica

Cidigo: https://github.com/programadornovato/Mi-Primer-Proyecto-Android-Studio/commit/cace6a3f792f8516174c9c21dcdf806f24aad452

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

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)