Primera aplicación
Para esta primera aplicación utilizaremos los elementos TextView, Button y EditText
La aplicación tendrá el siguiente aspecto:
El layout utilizado será el de por defecto ConstraintLayout
Observa como está organizado el layout. Simplemente arrastra los puntos blancos donde quieras añadir una restricción. Haciendo ajustes en el diseñador se modificará automáticamente el fichero .xml.
Video ConstraintLayout: https://www.youtube.com/watch?v=Vf3_NqnG7bM
A continuación programamos los botones. Hemos puesto 3 botones de 3 formas diferentes.
Forma 1: Implementamos la interface View.OnClickListener
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
En esta forma deberemos configurar los listener del botón:
//listener forma1
boton1 = findViewById(R.id.buttonTipo1);
boton1.setOnClickListener(this);
E implementar el método OnClick:
public void onClick(View v) {
//Hago referencia al elemento que quiero capturar
EditText campoTexto = findViewById(R.id.editText);
//Cojo el texto
String textoUsuario = campoTexto.getText().toString();
//Y lo muestro en una tostada
Toast.makeText(this, textoUsuario, Toast.LENGTH_LONG).show();
}
En este caso al pulsar el botón llamamos hacemos una referencia, cojemos el texto y a continuación mostramos el texto en una tostada.
Forma 2: Definimos el método a llamar en el fichero .xml
Se crea un método cualquiera con la siguiente estructura:
public void forma2(View v) {
//Tostada para comprobar que funciona
Toast.makeText(this, "Forma 2 de poner un botón", Toast.LENGTH_SHORT).show();
}
A continuación especificaremos el método creado en el atributo onClick del botón:
Forma 3: Definir el listener y la referencia al botón a la vez.
De esta forma unicamente deberemos de copiar el siguiente código en el método onCreate de la Actividad:
//tercera forma de hacer un botón
final Button boton3 = findViewById(R.id.buttonTipo3);
boton3.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Code here executes on main thread after user presses button
Toast.makeText(MainActivity.this, "No necesito implementar la interface", Toast.LENGTH_SHORT).show();
}
});
Todo el código está en: https://github.com/Manuel-Ag/PMD_19-20/tree/master/Primera_aplicacion