Ejercicio: Conversor de moneda
Convertir $ a € y viceversa
Ejercicio: Conversor de moneda
Pasar una cadena de texto a número y viceversa:
public static String convertirADolares(String cantidad) { double valor = Double.parseDouble(cantidad) / cambio; return Double.toString(valor); //return String.valueOf(valor); }
Poner un formato con dos decimales:
public static String convertirAEuros(String cantidad) { double valor = Double.parseDouble(cantidad) * cambio; return String.format("%.2f", valor); }
Use view binding to replace findViewById
Ejercicio: Conversor de moneda usando View Binding
en el fichero build.gradle se deben añadir estas líneas:
viewBinding {
enabled = true
}
apply plugin: 'com.android.application' android { compileSdkVersion 28 buildToolsVersion "30.0.2" viewBinding { enabled = true } // buildFeatures { // viewBinding = true // } defaultConfig { applicationId "com.example.conversornuevo" minSdkVersion 23 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } . . .
MainActivity.java:
public class MainActivity extends AppCompatActivity implements View.OnClickListener { public final double RATIO = 0.9; private ActivityMainBinding binding; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //activity_main.xml -> ActivityMainBinding binding = ActivityMainBinding.inflate(getLayoutInflater()); View view = binding.getRoot(); setContentView(view); //botón convertir en activity_main.xml binding.convertir.setOnClickListener(this); } @Override public void onClick(View view) { if (view == binding.convertir) { try { if (binding.dolaresAEuros.isChecked()) binding.euros.setText((convertirAEuros(binding.dolares.getText().toString(), RATIO))); else binding.dolares.setText((convertirADolares(binding.euros.getText().toString(), RATIO))); } catch (NumberFormatException e) { Toast.makeText(this, "Error al convertir " + e.getMessage(), Toast.LENGTH_LONG); } } } }
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.