Vidéo: Tool: Strict Mode (100 Days of Google Dev) 2025
Pourquoi cliquer deux fois quand vous pouvez faire la même chose en cliquant une seule fois? Votre application Android peut répondre au contenu des cases à cocher lorsque l'utilisateur clique sur un bouton. Dans un scénario simplifié, votre application peut répondre dès que l'utilisateur coche une case. Ce code vous montre comment y arriver.
package com. allyourcode. p01_06_04; importer Android. app. Activité; importer Android. os. Paquet; importer Android. vue. Menu; importer Android. vue. Élément du menu; importer Android. widget. CheckBox; importer Android. widget. CompoundButton; importer Android. widget. CompoundButton. OnCheckedChangeListener; importer Android. widget. Affichage; classe publique MainActivity extends Activity implements OnCheckedChangeListener {TextView textView; @Override protégé void onCreate (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (disposition R., activité_main); ((CheckBox) findViewById (identifiant R. checkBox)). setOnCheckedChangeListener (this); ((CheckBox) findViewById (ID R. checkBox2)). setOnCheckedChangeListener (this); textView = (TextView) findViewById (R.Id.textView);} @Overide public void onCheckedChanged (boîte CompoundButton, boolean isChecked) {StringBuilder str = nouveau StringBuilder (textView.getText ()); CharSequence boxText = boîte. getText (); if (isChecked) {str. append ("" + boxText);} else {int start = str. indexOf (boxText. toString ()); int longueur = boxText. longueur(); str. replace (start, start + length, "");} textView. setText (chaîne toString (). trim ());} // … Et cetera
Comme un bouton, chaque case à cocher écoute les événements onClick. Vous pouvez éviter d'utiliser la propriété onClick et illustrer l'utilisation d'un écouteur d'événement différent.
Une case à cocher est à l'écoute des modifications de son état (état "coché" ou "non coché"). Ainsi, lorsque l'utilisateur touche une case à cocher, Android déclenche un événement onCheckedChanged. En l'enregistrant (l'intégralité de l'instance MainActivity) en tant que OnCheckedChangeListener de chaque case à cocher, vous appelez Android la méthode onCheckedChanged.
La méthode onCheckedChanged a deux paramètres: le composant touché et l'état du composant résultant du toucher. Le code ci-dessus a été conçu pour utiliser ces deux paramètres de méthode.
Un composant CompoundButton est un widget avec des états cochés et non cochés. La classe CheckBox est une sous-classe de CompoundButton. Les autres sous-classes de CompoundButton sont RadioButton et ToggleButton. Un ToggleButton est cette petite chose mignonne qui s'allume quand elle est cochée.
Dans le code que vous voyez ci-dessus, le paramètre box de la méthode onCheckedChanged fait référence à la case cochée par l'utilisateur.Cette case à cocher a une méthode getText, donc vous utilisez la méthode getText pour aider à remplir l'élément textView. Vous pouvez utiliser le paramètre isChecked de la méthode onCheckedChanged pour décider d'ajouter du texte à l'élément textView ou de supprimer du texte de l'élément textView.
