Divers écouteurs qui apparaissent dans le développement d'applications Android. Il y a deux modèles principaux pour écrire dans un fichier java, et c'était déroutant, donc je vais l'écrire sous forme de mémorandum.
Cet exemple est une application qui affiche un message lorsque vous appuyez sur un bouton.
Evénement: Une opération à effectuer sur l'écran (exemple: clic) Gestionnaire d'événements ・ ・ ・ Traitement à effectuer pour l'événement (Exemple: Afficher le texte lorsque l'utilisateur clique dessus) Auditeur: quelque chose qui détecte un événement (exemple: bouton)
La mise en page est adaptée.
activity_main.xml
<?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/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="bouton"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@id/text" />
</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //Réglage de l'écouteur (bouton de détection d'événement installé)
        Button button1 = findViewById(R.id.btn);
        button1.setOnClickListener(new TestListener());
    }
    //Créer une classe d'auditeur(Cliquez sur le bouton+Affichage du texte)
    private class TestListener implements View.OnClickListener {
        @Override
        public void onClick(View view) {
            TextView textView = findViewById(R.id.text);
            textView.setText("J'ai cliqué sur le bouton1");
        }
    }
}
MainActivity.java
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //Décrivez tous ensemble
        Button button2 = findViewById(R.id.btn);
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                TextView textView = findViewById(R.id.text);
                textView.setText("J'ai cliqué sur le bouton 2");
            }
        });
    }
}
Bouton In ・ SetOnClickListener ・ View.OnClickListener · Sur clic Puisque le flux est décidé, reconnaissez-le comme un ensemble.
J'en ai introduit deux, mais il semble que View.OnClickListener est défini avec une classe anonyme de base. Par conséquent, le modèle 1 doit être utilisé comme référence pour comprendre la structure!
Recommended Posts