J'ai créé une application dans Android Studio qui utilise des boutons radio regroupés dans des groupes de boutons radio et des cases à cocher, chacune d'une valeur qui est enregistrée lorsqu'un bouton radio ou une case à cocher spécifique est cliqué. Actuellement, il existe un bouton Calculer qui, lorsque cliqué sur Appelle une méthode Submitorder () et totalise la somme de tous les boutons radio et cases à cocher sélectionnés et l'affiche à l'écran avec un message. Cela fonctionne juste bien. Je veux éliminer complètement le bouton Calculer et avoir la somme autocalculée et rafraîchie en temps réel lorsque l'utilisateur clique sur n'importe quel bouton radio ou combinaison de boutons radio et de coches. J'ai cherché loin sur le débordement de la pile et sur Google et n'a pas trouvé d'exemples ou de recommandations utiles sur la méthode de l'appel de Submitère () dans le code Java lui-même. J'ai essayé toutes sortes d'itérations, mais pas de succès. Toute recommandation serait grandement appréciée.
J'ai essayé d'ajouter la méthode Submitorderder () dans le code associé à chaque bouton radio ou à la case, mais pas de succès p>
// le code suivant est requis pour Les groupes radio pour fonctionner sans provoquer une erreur P>
private int calculatePrice(boolean addRadioOne, boolean addRadioTwo, boolean addRadioThree,boolean addRadioFour, boolean addRadioFive)
3 Réponses :
Vous devez faire quelque chose comme suit: p>
Vous n'êtes pas obligé de passer tous les Vous pouvez définir un auditeur commun à l'aide de Vous pouvez obtenir toutes les valeurs une par une pour chaque J'espère que vous convertiez mes mots en programmation. P>
merci p> Submitorder () Code> Méthode. P> LI >
radiogroupe code> ou
ou
, appelez
soumissionnaire code> cela. p> li>
radiobutton code> et
code> soit vrai ou faux fort> p> li>
ul>
Merci pour l'aperçu!
Radiogroupe respiratoire = (radiogroupe) FOYVISHYID (R.ID.Respiratoire); {Radiogroup.oncheckedCHangelisterergergerer; } // J'ai essayé ceci mais en vain. Je suis un nouveau développeur alors veuillez accepter mes excuses pour mes compétences de sauterelle. Comme vous pouvez le constater, j'ai créé un ID pour le premier groupe radio, puis ajouté l'ONCHeckEdChangelistener pour le radiogroupe, puis appelé le soumissionnaire. Est-ce ce que tu avais à l'esprit? Curieux de ce que je manque?
Donc, ce que je tente de faire, c'est que l'application ajuster le total du total au total lorsqu'un bouton radio de n'importe quel groupe radio est sélectionné ou si une case à cocher est cochée. Je pense que le problème est que je tente d'appeler Submitère () pendant que je suis déjà dans la méthode Submitère (). Est-ce que c'est possible ? Je continue sur ma quête .........
Vous devez faire quelque chose comme ci-dessous. Définissez CheckedChanGelisteners pour tous les boutons radio. Lorsque chacun du bouton radio est coché / décoché, les écouteurs mettront à jour la somme en conséquence.
radio1 = findViewById(R.id.radio1); radio2 = findViewById(R.id.radio2); radio3 = findViewById(R.id.radio3); private int count=0; radio1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked) count=count+3; else{ if(count>0){ count=count-3; } } System.out.println(count); } }); radio2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked) count++; else{ if(count>0){ count--; } } System.out.println(count); } }); radio3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked) count=count+0; else{ if(count>0){ count=count-0; } } System.out.println(count); } });
//So after many attempts and much testing I found that all I had to do was add the submitOrder(view:null); in the onRadioButtonClicked method // the following code is required in order for the radio groups to function //without causing an error public void onRadioButtonClicked(View view) { // Is the button now checked? boolean checked = ((RadioButton) view).isChecked(); submitOrder(null); } And for the checkboxes similarly we add the submitOrder(view:null); in the onCheckBoxClicked method which is called when the CheckBox is clicked public void onCheckBoxClicked(View view) { // Is the Checkbox now checked? boolean checked = ((CheckBox) view).isChecked(); submitOrder(null); } You must have two separate methods, one for RadioButtons and One for CheckBoxes which must be called in each radioButton and CheckBox XML code for each object. Otherwise the App will crash.
Le soumissionnaire (0 méthode appelez ceci: Privé Int Calculatprice (Boolean Adradioone, Boolean Adradiotwo, Boolean Adradiothree, Boolean Adradiofour, Boolean Addradiofive