Widżety są istotnym elementem dostosowywania ekranu głównego. Można je traktować jako „podgląd” najważniejszych danych i funkcji aplikacji, które są dostępne na ekranie głównym użytkownika. Użytkownicy mogą przenosić widżety na panelach ekranu głównego, a w razie możliwości zmieniać ich rozmiar, aby dostosować ilość informacji wyświetlanych na widżecie do swoich preferencji.
W tej dokumentacji znajdziesz informacje o różnych typach widżetów, które możesz tworzyć, oraz zasady projektowania, których należy przestrzegać. Aby utworzyć widżet aplikacji za pomocą interfejsów API i schematów XML widoku zdalnego, zapoznaj się z artykułem Tworzenie prostego widżetu. Aby utworzyć widżet za pomocą interfejsów API w stylu Kotlin i Compose, zapoznaj się z artykułem Jetpack Glance.
Typy widżetów
Planując widżet, zastanów się, jaki ma być. Widgety zwykle należą do jednej z tych kategorii:
Widżety informacji
Widgety informacyjne zwykle wyświetlają najważniejsze elementy informacji i śledzą, jak te informacje się zmieniają w czasie. Przykładami widżetów informacyjnych są widżety pogody, zegara lub widżety do śledzenia wyników sportowych. Kliknięcie widżetu z informacjami zwykle powoduje uruchomienie powiązanej aplikacji i wyświetlenie szczegółowych informacji o widżecie.
Widżety kolekcji
Widgety kolekcji wyświetlają wiele elementów tego samego typu, np. kolekcję zdjęć z aplikacji galerii, kolekcję artykułów z aplikacji z wiadomościami lub kolekcję e-maili lub wiadomości z aplikacji do komunikacji. Widgety kolekcji można przewijać w kierunku pionowym.
Widgety kolekcji zwykle skupiają się na tych zastosowaniach:
- przeglądać kolekcję.
- otwarcie elementu kolekcji w widoku szczegółowym w powiązanej aplikacji;
- Interakcje z elementami, np. oznaczanie ich jako zakończonych – z obsługą złożonych przycisków w Androidzie 12 (poziom API 31).
Sterowanie widżetami
Głównym celem widżetu sterowania jest wyświetlanie często używanych funkcji, aby użytkownik mógł je aktywować na ekranie głównym bez konieczności otwierania aplikacji. Można je traktować jak piloty do aplikacji. Przykładem widżetu sterowania jest widżet sterowania domem, który pozwala użytkownikom włączać i wyłączać światła w domu.
Interakcja z widżetem może spowodować otwarcie powiązanego widoku szczegółowego w aplikacji. Zależy to od tego, czy funkcja widżetu wygeneruje jakieś dane, na przykład w przypadku widżetu wyszukiwania.
Widgety hybrydowe
Chociaż niektóre widżety odpowiadają jednemu z typów w poprzednich sekcjach (informacje, kolekcja lub kontrola), wiele z nich to widżety hybrydowe, które łączą elementy różnych typów. Na przykład widżet odtwarzacza muzycznego jest przede wszystkim widżetem sterującym, ale pokazuje też użytkownikowi, jaki utwór jest aktualnie odtwarzany, jak widżet informacyjny.
Podczas planowania widżetu użyj jednego z typów podstawowych i w razie potrzeby dodaj elementy innych typów.
Integracja widżetów z Asystentem Google
Asystent Google może wyświetlać dowolny typ widżetu w odpowiedzi na polecenia głosowe użytkownika. Możesz skonfigurować widżety tak, aby spełniały wymagania App Actions, umożliwiając użytkownikom otrzymywanie szybkich odpowiedzi i interaktywnych aplikacji na takich platformach Asystenta jak Android i Android Auto. Więcej informacji o wypełnianiu widżetów przez Asystenta znajdziesz w artykule Integracja działań aplikacji z widżetami na Androidzie.
Ograniczenia dotyczące widżetów
Widgety można traktować jako „miniaplikacje”, ale przed zaprojektowaniem widżetu warto poznać pewne ograniczenia.
Gesty
Widżety są widoczne na ekranie głównym, więc muszą współistnieć z dostępną na nim nawigacją. Ogranicza to obsługę gestów w widżetach w porównaniu z aplikacjami pełnoekranowymi. Aplikacje mogą umożliwiać użytkownikom nawigowanie między ekranami w poziomie, ale gest ten jest już używany na ekranie głównym do nawigowania między ekranami głównymi.
Jedynymi gestami dostępnymi dla widżetów są dotknięcie i przesunięcie w dół.
Żywioły
Ze względu na ograniczenia dotyczące gestów dostępnych w przypadku widżetów niektóre elementy interfejsu użytkownika, które korzystają z gestu ograniczonego, są niedostępne w przypadku widżetów. Pełną listę obsługiwanych elementów konstrukcyjnych oraz więcej informacji o ograniczeniach układu znajdziesz w artykułach Tworzenie układu widżetu i Zapewnienie elastycznych układów widżetów.
Wskazówki dotyczące projektu
Treść widżetu
Widgety to świetny sposób na przyciągnięcie użytkowników do aplikacji przez „reklamowanie” nowych i ciekawych treści dostępnych w aplikacji.
Podobnie jak teasery na pierwszej stronie gazety, widżety konsolidują i koncentrują informacje z aplikacji oraz zapewniają dostęp do bardziej szczegółowych informacji w aplikacji. Można powiedzieć, że widżet to „przekąska”, a aplikacja to „posiłek”. Upewnij się, że aplikacja wyświetla więcej szczegółów dotyczących elementu informacji niż widżet.
Nawigacja w widżetach
Oprócz treści informacyjnych rozważ dodanie do widgeta linków do często używanych obszarów aplikacji. Dzięki temu użytkownicy będą mogli szybciej wykonywać zadania, a aplikacja będzie bardziej funkcjonalna na ekranie głównym.
Dobrze nadają się do tego linki nawigacyjne w widżetach:
Funkcje generatywne: to funkcje, które umożliwiają użytkownikowi tworzenie nowych treści w aplikacji, np. tworzenie nowego dokumentu lub nowej wiadomości.
Otwórz aplikację na najwyższym poziomie: kliknięcie elementu z informacjami zwykle przenosi użytkownika na ekran z szczegółami niższego poziomu. Udostępnianie dostępu do najwyższego poziomu aplikacji zapewnia większą elastyczność nawigacji i może zastąpić dedykowany skrót do aplikacji, którego użytkownicy używają do przechodzenia do aplikacji z ekranu głównego. Użycie ikony aplikacji do wyświetlania tej funkcji może też wyraźnie identyfikować widżet, jeśli wyświetlane dane są niejednoznaczne.
Zmienianie rozmiaru widżetu
Naciśnięcie i przytrzymanie widżetu, który można zmieniać rozmiar, a następnie puszczenie go powoduje przejście do trybu zmiany rozmiaru. Użytkownicy mogą ustawić preferowany rozmiar za pomocą uchwytów do przeciągania lub brzegów widżetu.
Zmiana rozmiaru pozwala użytkownikom dostosować wysokość i szerokość widżetu w ograniczeniach siatki na ekranie głównym. Możesz zdecydować, czy widget ma mieć dowolny rozmiar, czy też jego wymiary mają być ograniczone do zmian w orientacji poziomej lub pionowej. Nie musisz obsługiwać zmiany rozmiaru, jeśli rozmiar widżetu jest stały.
Umożliwienie użytkownikom zmiany rozmiaru widżetów ma ważne zalety:
- Mogą one dostosować ilość informacji wyświetlanych na poszczególnych widżetach.
- Mogą lepiej wpływać na układ widżetów i skrótów na swoich panelach głównych.
Zaplanuj strategię zmiany rozmiaru widżetu w zależności od jego typu. Widgety kolekcji oparte na listach lub siatkach są zwykle proste, ponieważ zmiana rozmiaru widgetu powoduje powiększenie lub zwężenie obszaru przewijania w pionie. Niezależnie od rozmiaru widgetu użytkownik może przewinąć wszystkie elementy informacji.
Widgety informacyjne wymagają bardziej szczegółowego zaplanowania, ponieważ nie można ich przewijać, a wszystkie treści muszą mieścić się w danym rozmiarze. Musisz dynamicznie dostosowywać zawartość i układ widżetu do rozmiaru zdefiniowanego przez użytkownika podczas operacji zmiany rozmiaru.
W następującym przykładzie użytkownik może zmienić rozmiar widżetu pogody w 3 krokach, aby wyświetlić więcej informacji o pogodzie w bieżącej lokalizacji.
W przypadku każdego rozmiaru widżetu określ, ile informacji o aplikacji ma być wyświetlanych. W przypadku mniejszych rozmiarów skup się na najważniejszych informacjach, a potem dodaj informacje kontekstowe, gdy widżet będzie się powiększał w poziomie i w pionie.
Uwagi dotyczące układu
Kuszące jest rozmieszczanie widżetów zgodnie z wymiarami siatki do umieszczania elementów na urządzeniu, na którym pracujesz. Może to być przydatne przy wstępnym oszacowaniu, ale pamiętaj o tych kwestiach:
- Planowanie strategii zmiany rozmiaru widżetów w ramach „kategorii rozmiarów” zamiast zmiennych wymiarów siatki daje najbardziej wiarygodne wyniki.
- Liczba, rozmiar i odstępy między komórkami mogą się znacznie różnić w zależności od urządzenia. Dlatego ważne jest, aby widget był elastyczny i mógł pomieścić więcej lub mniej miejsca niż przewidywano.
- Gdy użytkownik zmienia rozmiar widżetu, system odpowiada zakresem rozmiarów w dp, w którym widżet może się ponownie narysować.
- Od Androida 12 możesz podawać bardziej dokładne atrybuty rozmiarów i bardziej elastyczne układy. Obejmuje to:
- Określanie ograniczeń rozmiaru widżetu Możesz na przykład określić docelowy rozmiar widżetu w komórkach siatki oraz maksymalny możliwy rozmiar.
- Udostępnianie układów elastycznych, które zmieniają się w zależności od rozmiaru widżetu.
- udostępnianie układów o dokładnych rozmiarach, które pozwalają uruchamiać aplikację z opcjami rozmiarów w orientacji pionowej i poziomej na telefonach oraz w 4 rozmiarach na składanych urządzeniach;
- Użyj zaktualizowanych wskazówek i nowych interfejsów API, aby określić odpowiednie rozmiary widżetu.
Konfigurowanie widżetów przez użytkowników
Czasami użytkownik musi skonfigurować widżet, zanim będzie można z niego korzystać. Pomyśl o widżecie e-maili, w którym użytkownik musi wybrać folder z e-mailami, zanim będzie można wyświetlić skrzynkę odbiorczą, lub widżecie statycznych zdjęć, w którym użytkownik musi przypisać zdjęcie z galerii, aby je wyświetlić. Widżety na Androidzie wyświetlają opcje konfiguracji zaraz po tym, jak użytkownik przeciągnie widżet na ekran główny.
Lista kontrolna dotycząca projektowania widżetów
- Skup się na małych porcjach informacji, które można szybko skanować wzrokiem na widżecie. rozszerzyć informacje w aplikacji,
- Wybierz odpowiedni typ widżetu do swoich potrzeb.
- Zaplanuj, jak treść widżetu będzie dostosowywana do różnych rozmiarów.
- Upewnij się, że układ widżetu jest niezależny od orientacji i urządzenia, dzięki czemu może się rozszerzać i kurczyć.
- Zastanów się, czy widget wymaga dodatkowej konfiguracji.