Stany ładowania istnieją, aby odpowiedzieć użytkownikowi na jedno pytanie: czy coś się dzieje? Bez odpowiedzi ludzie stukają ponownie, ładują stronę ponownie lub wychodzą. Właściwa odpowiedź zależy od tego, jak długo czekają.
W przypadku bardzo krótkich czasów oczekiwania, krótszych niż około jedna dziesiąta sekundy, większość ludzi nie zauważa opóźnienia, więc wskaźnik jedynie dodaje migotania. Powszechną techniką jest krótkie odczekanie przed pokazaniem spinnera, tak aby szybkie odpowiedzi w ogóle go nie wyświetlały.
Poczekaj sekundę lub kilka sekund i wyświetl informację zwrotną, w której pojawi się wynik. Szkielet ekranu, szary zarys przyszłego układu, dobrze sprawdza się w przypadku list, kart i profili, ponieważ pokazuje, co nadchodzi i ogranicza przesunięcia układu. Spinner sprawdza się na małych obszarach lub gdy wynik nie ma przewidywalnego kształtu.
W przypadku długich zadań, takich jak przesyłanie, eksportowanie lub generowanie sztucznej inteligencji, pokaż rzeczywisty postęp, jeśli możesz go zmierzyć, wyjaśnij, co się dzieje i pozwól ludziom anulować lub kontynuować inną pracę. Spinner, który obraca się przez minutę bez żadnych innych informacji, wydaje się porażką.
Kontrolka, która rozpoczęła akcję, również potrzebuje stanu. Przycisk przesyłania, który przełącza się w stan ładowania i nie można go dwukrotnie nacisnąć, zapobiega duplikowaniu zamówień i wiadomości. Po zakończeniu ładowania przejdź wyraźnie do sukcesu lub błędu, zamiast po cichu wracać do ustawień domyślnych.
Animacja pomaga tutaj, ale zachowaj spokój i krótką pętlę oraz przestrzegaj ustawienia zmniejszonego ruchu. ExodeUI, który tworzymy, pozwala zaprojektować moduł ładujący lub przycisk ze stanami ładowania, powodzenia i błędów w jednym pliku, pomiędzy którym przełącza się Twój kod.