Android ToggleButton setChecked(...) la méthode ne change pas le statut de bouton
J'ai un togglebutton qui n'est pas de répondre à ma setChecked(...) de la méthode. Voici le code:
mBool = mPrefs.getBoolean("buttondefault", true);
Boolean b = mBool; //Only creating this for Logging, mBool IS PRIMITIVE
Log.e("Update pref", b.toString());
mToggle = (ToggleButton)findViewById(R.id.ac_toggle);
mToggle.setOnClickListener(this);
mToggle.setChecked(mBool);
Le journal rapporte mBool être vrai, laissez quand je fais mToggle.setChecked(mBool)
le bouton est à la position off.
Voici le xml pour le bouton:
<ToggleButton android:id="@+id/ac_toggle"
android:textOn="Yes"
android:textOff="No"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="3sp"
android:layout_weight="5"/>
Des idées?
- Avez-vous mis ce code dans onCreate() ?
- Oui, ce code est appelé dans onCreate()
Vous devez vous connecter pour publier un commentaire.
Le code que j'ai présenté était juste copié à partir de différentes méthodes. Longue histoire courte, j'ai été paramètre booléen après que j'ai initialisé et placer le bouton statut vérifié. Des excuses.
Veuillez utiliser les primitives de type boolean pour définir l'état
Log.d(TAG, "bool is " + bool);
Éventuellement besoin d'appeler le point de Vue.requestLayout() ou de la Vue.forceLayout() sur les boutons en Vue d'actualiser les boutons de l'état
Parce que le bouton de setChecked() méthode accepte un primitif
boolean
comme paramètre. vous êtes à la fourniture d'uneBoolean
(classe wrapper) de la variable. Normalement, cela devrait être bien, mais il ne fonctionne pas sur cette méthode spécifique, de sorte que vous pourriez avoir besoin manuellement unbox de la variable ou de changer le type de mBool àboolean