Do tej pory, gdy chciałem zatrzymać użytkownika od naciśnięcia przycisku, ustawiłem button.setClickable(false);
i zazwyczaj zmieniłem tekst na szary kolor (aby użytkownik wiedział, że przycisk jest wyłączony). Dzisiaj natknąłem się na właściwość setEnabled()
.setEnabled() vs setClickable(), jaka jest różnica?
Poszedłem więc do dokumentacji patrz metoda jest wyjaśnienie poniżej:
setEnabled(boolean enabled)
Set the enabled state of this view.
Co to w ogóle znaczy? Jaka jest różnica między stanem aktywacji/stanem klikalnym a stanem nieaktywnym/stanem nieklatkowym? Czy ktoś mógłby wyjaśnić, jaka jest różnica pomiędzy robieniem tego, co robiłem wcześniej, używanie klikalnej właściwości i używanie właściwości setEnabled()
? Czego należy użyć, kiedy? Przeszukałem StackOverflow, ale nie mogłem znaleźć niczego powiązanego. Z góry dziękuję.
Domyślam się, że setEnabled (false) sprawia, że widok jest nieklikalny i nie można go ustawić, co oznacza, że jest całkowicie zablokowany. Ponadto, setEnabled (false) jest preferowanym sposobem w przypadku przycisku, ponieważ sprawia, że przycisk jest wizualnie "wyłączony" – Droidman
, co masz na myśli przez: ".. ponieważ sprawia, że przycisk jest wizualnie" wyłączony "? W jaki sposób zmienia go wizualnie ? a co jeśli używam niestandardowego selektora? –
nie jestem pewien co do niestandardowego selektora, nie przetestowałem go, ale w przypadku standardowego przycisku robi się półprzezroczysty, więc nie musisz tego robić ręcznie – Droidman