Primera aplicación Android completa: un conversor de divisas entre euros y dólares. La tasa de cambio usada es 1 euro = 1,13 dólares.
Diseño del layout
La aplicación tiene dos campos EditText (uno para euros y otro para dólares), dos botones de conversión y un ImageButton para cerrar la aplicación.




Código Java
Conversor.java:
package programaciones.inazio.conversor;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
public class Conversor extends AppCompatActivity {
private EditText txtEuros;
private EditText txtDolares;
private Button btnEurosDolares;
private Button btnDolaresEuros;
private ImageButton btnSalir;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_conversor);
txtEuros = (EditText)findViewById(R.id.txtEuros);
txtDolares = (EditText)findViewById(R.id.txtDolares);
btnEurosDolares = (Button)findViewById(R.id.btnEurosDolares);
btnDolaresEuros = (Button)findViewById(R.id.btnDolaresEuros);
btnSalir = (ImageButton)findViewById(R.id.btnSalir);
btnEurosDolares.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
float euros = Float.parseFloat(txtEuros.getText().toString());
float dolares = euros * 1.13f;
txtDolares.setText(String.valueOf(dolares));
} catch (Exception e) {
txtDolares.setText("Error");
}
}
});
btnDolaresEuros.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
float dolares = Float.parseFloat(txtDolares.getText().toString());
float euros = dolares / 1.13f;
txtEuros.setText(String.valueOf(euros));
} catch (Exception e) {
txtEuros.setText("Error");
}
}
});
btnSalir.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_conversor, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}