Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.dam.euro2dollarconverter;
- import androidx.appcompat.app.AppCompatActivity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- import android.widget.Toast;
- public class MainActivity extends AppCompatActivity {
- private TextView title, info, resultInfo, result;
- private EditText amount;
- private Button btn_eur_usd, btn_usd_eur;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- //Definir los elementos de la interfaz
- title = (TextView) findViewById(R.id.textViewTitle);
- info = (TextView) findViewById(R.id.textViewInfo);
- resultInfo = (TextView) findViewById(R.id.textViewResultInfo);
- result = (TextView) findViewById(R.id.textViewResult);
- amount = (EditText) findViewById(R.id.editTextNumber);
- btn_eur_usd = (Button) findViewById(R.id.btnEurosToDollars);
- btn_usd_eur = (Button) findViewById(R.id.btnDollarsToEuros);
- // Listener del botón para convertir de EUR a USD
- btn_eur_usd.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- String amountText = amount.getText().toString();
- // Caso 1: El usuario no ha escrito en la caja de cantidad.
- if (amountText.isEmpty()) {
- Toast.makeText(MainActivity.this, "Debe introducir una cantidad a convertir", Toast.LENGTH_SHORT).show();
- // Si hay texto escrito comprueba si es un número o texto convirtiéndolo dentro de un try
- } else {
- // Caso 2: El usuario ha introducido un valor numérico válido, realiza la operación correspondiente
- try {
- double euros = Double.parseDouble(amountText);
- double conversionResult = Math.round(euros * 1.21 * 1000.0) / 1000.0; // Redondear el resultado en 3 decimales
- result.setText(String.format("%s$", conversionResult));
- Toast.makeText(MainActivity.this, "Operación realizada correctamente", Toast.LENGTH_SHORT).show();
- // Caso 3: El usuario ha introducido un texto no numérico, por lo que salta el catch
- } catch (NumberFormatException e) {
- Toast.makeText(MainActivity.this, "Valor erróneo, introduzca un valor numérico", Toast.LENGTH_SHORT).show();
- }
- }
- }
- });
- // Listener del botón para convertir de USD a EUR
- btn_usd_eur.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- String amountText = amount.getText().toString();
- // Caso 1: El usuario no ha escrito en la caja de cantidad.
- if (amountText.isEmpty()) {
- Toast.makeText(MainActivity.this, "Debe introducir una cantidad a convertir", Toast.LENGTH_SHORT).show();
- // Si hay texto escrito comprueba si es un número o texto convirtiéndolo dentro de un try
- } else {
- // Caso 2: El usuario ha introducido un valor numérico válido, realiza la operación correspondiente
- try {
- double dollars = Double.parseDouble(amountText);
- double conversionResult = Math.round(dollars / 1.21 * 1000.0) / 1000.0; // Redondear el resultado en 3 decimales
- result.setText(String.format("%s€", conversionResult));
- Toast.makeText(MainActivity.this, "Operación realizada correctamente", Toast.LENGTH_SHORT).show();
- // Caso 3: El usuario ha introducido un texto no numérico, por lo que salta el catch
- } catch (NumberFormatException e) {
- Toast.makeText(MainActivity.this, "Valor erróneo, introduzca un valor numérico", Toast.LENGTH_SHORT).show();
- }
- }
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement