Mam metodę tak:Android toggleButton.setOnText i .invalidate nie odświeża tekst
ToggleButton toggle = ((ToggleButton)findViewById(R.id.toggle));
toggle.setTextOn("blah");
toggle.setTextOff("blahblah");
toggle.invalidate(); // doesn't work?
Metoda ta jest wywoływana z onOptionsItemSelected
. Przycisk przełączania znajduje się wewnątrz LinearLayout
, który znajduje się w innym LinearLayout
.
Spodziewam się, że tekst zostanie zaktualizowany natychmiast po wywołaniu metody. Zamiast tego tekst na przełączniku aktualizuje się tylko po ręcznym naciśnięciu, aby zmienić stany. Czego tu mi brakuje, czy używam niewłaściwej metody? Dlaczego nie działa .invalidate
?
To działa, ale dlaczego? I czy to naprawdę najlepszy sposób na zrobienie tego? – ZirconCode
@ZirconCode został zaktualizowany za pomocą innego rozwiązania. – Simas
rozwiązania czują się bardzo hacky, ale działają. Dzięki! – ZirconCode