Okna pulpitu umożliwiają użytkownikom jednoczesne uruchamianie wielu aplikacji z możliwością zmiany rozmiaru dzięki czemu możesz używać uniwersalnego rozwiązania, jak na komputerze.
Na ilustracji 1 widać organizację ekranu za pomocą okien pulpitu . Warto wiedzieć:
- Użytkownicy mogą uruchamiać wiele aplikacji jednocześnie.
- Pasek aplikacji jest umieszczony w stałym miejscu u dołu ekranu i wyświetla uruchomione aplikacje. Użytkownicy mogą przypinać aplikacje, aby mieć do nich szybki dostęp.
- Nowy, dostosowywalny pasek nagłówka zdobi górną część każdego okna i zawiera elementy sterujące, takie jak minimalizowanie i maksymalizowanie.
Domyślnie aplikacje otwierają się na pełnym ekranie na tabletach z Androidem. Aby uruchomić aplikację w oknie na komputerze, naciśnij i przytrzymaj uchwyt okna u góry ekranu, a następnie przeciągnij uchwyt w interfejsie, jak pokazano na rysunku 2.
Gdy aplikacja jest otwarta w oknie na pulpicie, inne aplikacje również otwierają się w oknach na pulpicie.
Użytkownicy mogą też wywołać okno pulpitu z menu, które pojawia się pod uchwytem okna, gdy klikniesz lub dotkniesz uchwyt lub użyjesz skrótu klawiszowego klawisz Meta (Windows, Command lub Szukaj) + Ctrl + w dół.
Użytkownicy zamykają okna pulpitu, zamykając wszystkie aktywne okna lub pobierając uchwyt okna u góry okna pulpitu i przeciągnięcie aplikacji w górę do krawędzi ekranu. Skrót klawiszowy Meta + H również zamyka działanie. okna przeglądarki i ponowne uruchamianie aplikacji na pełnym ekranie.
Aby wrócić do okna na komputerze, na ekranie Ostatnie kliknij lub dotknij kafelka przestrzeni na komputerze.
Tryb zgodności i możliwości zmiany rozmiaru
W oknach na komputerze aplikacje z zablokowaną orientacją można dowolnie zmieniać rozmiar. Oznacza to, że nawet jeśli aktywność jest zablokowana w orientacji pionowej, użytkownicy mogą zmienić rozmiar aplikacji na orientację poziomą.
Aplikacje o deklarowanej niemożności zmiany rozmiaru (czyli resizableActivity = false
) mają interfejs użytkownika przeskalowany przy zachowaniu tego samego współczynnika proporcji.
Aplikacje aparatu, które blokują orientację lub są zadeklarowane jako niemożliwe do zmiany rozmiaru, mają specjalną obsługę wizjerów aparatu: możliwość pełnej zmiany rozmiaru okna, ale format obrazu zostaje zachowany. Zakładając, że aplikacje zawsze działają w orientacji pionowej lub poziomej, aplikacje zakodują na stałe lub w inny sposób założeniami, które powodują błędne obliczenia podglądu lub zrobionego zdjęcia orientacja lub format obrazu, dzięki czemu obrazy są rozciągnięte, obrócone na bok lub do góry nogami.
Dopóki aplikacje nie będą gotowe do implementacji w pełni elastycznych wizjerów aparatu, specjalne traktowanie zapewni użytkownikom bardziej podstawowe wrażenia, które ograniczy skutki błędnych założeń.
Więcej informacji o trybie zgodności aplikacji aparatu znajdziesz w artykule Tryb zgodności urządzenia.
Niestandardowe wstawki nagłówka
Wszystkie aplikacje działające w oknie na komputerze mają pasek nagłówka, nawet w trybie pełnoekranowym.
Upewnij się, że pasek nagłówka nie zasłania treści aplikacji.
Pasek nagłówka to wbudowany pasek podpisu:
androidx.compose.foundation.layout.WindowInsets.Companion.captionBar()
;
w widokach WindowInsets.Type.captionBar()
,
który jest częścią pasków systemowych.
Więcej informacji o obsłudze wektorów znajdziesz w artykule Wyświetlanie treści od krawędzi do krawędzi w aplikacji i obsługa wstawionych okien w narzędziu Compose.
Pasek nagłówka również można dostosowywać. W Androidzie 15 wprowadzono typ wyglądu APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND
, aby umożliwić aplikacjom wyświetlanie niestandardowych treści w pasku nagłówka.
Aplikacje są odpowiedzialne za stylizowanie górnej części treści tak, aby wyglądają jak pasek napisów (tło, treść niestandardowa itd.) z z wyjątkiem elementów napisów systemowych (przycisków zamykania i maksymalizacji), które są który system wyświetla na przezroczystym pasku napisów u góry aplikacji.
Aplikacje mogą przełączać wygląd elementów systemu w tytule w jasnym i ciemnym motywie za pomocą APPEARANCE_LIGHT_CAPTION_BARS
, podobnie jak w przypadku paska stanu i paska nawigacyjnego.
W Androidzie 15 wprowadziliśmy też
WindowInsets#getBoundingRects()
która pozwala aplikacjom bardziej szczegółowo analizować wstawki pasków z napisami.
Aplikacje mogą rozróżniać obszary, na których system wyświetla elementy systemowe, oraz obszary niewykorzystane, na których aplikacje mogą umieszczać treści niestandardowe bez nakładania się na elementy systemowe.
Lista obiektów Rect
zwracanych przez interfejs API wskazuje regiony systemu, których należy unikać. Pozostała przestrzeń (obliczana przez odjęcie prostokątów)
(na pasku napisów) to miejsce, w którym aplikacja może rysować bez
które nakładają się na elementy systemu i mogą otrzymywać dane wejściowe.
Wielozadaniowość i obsługa wielu instancji
Wielozadaniowość jest podstawą tworzenia okien na komputerach. Pozwala to instancji aplikacji może znacznie zwiększyć produktywność użytkowników.
Android 15 wprowadza parametr PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, który pozwala aplikacjom określić, że interfejs użytkownika systemu powinien być wyświetlany, aby umożliwić uruchamianie aplikacji w wielu instancjach.
Zarządzanie instancjami aplikacji za pomocą gestów przeciągania
W trybie wielu okien użytkownicy mogą uruchomić nowe wystąpienie aplikacji, przeciągając widok. element poza oknem aplikacji. Użytkownicy mogą też przenosić elementy między instancjami tej samej aplikacji.
W Androidzie 15 wprowadziliśmy 2 flagi umożliwiające dostosowanie działania funkcji przeciągania i upuszczania:
DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG
: Wskazuje, że aby rozpocząć, trzeba przekazać do systemu nieobsłużone przeciąganie jeśli żadne widoczne okno nie obsługuje listy. Podczas używania tej flagi wywołujący musi przekazaćClipData
zItem
, który zawiera niezmiennąIntentSender
do aktywności do uruchomienia (patrzClipData.Item.Builder#setIntentSender()
). System może uruchomić lub nie uruchomić zamiaru na podstawie czynników takich jak bieżący rozmiar ekranu lub tryb okna. Jeśli system nie uruchomi intencji, zostanie ona anulowana za pomocą zwykłego procesu przeciągania i upuszczania.DRAG_FLAG_GLOBAL_SAME_APPLICATION
: Wskazuje, że operacja przeciągania może przekraczać granice okien (w przypadku wielu instancji tej samej aplikacji).Gdy wywołana zostanie funkcja
startDragAndDrop()
z ustawionym tym flagiem, tylko widoczne okna należące do tej samej aplikacji mogą uczestniczyć w operacji przeciągania i odbierać przeciągane treści.
Dodatkowe optymalizacje
Dostosuj uruchamianie aplikacji i przeprowadzaj aplikacje z okna na komputery na pełny ekran.
Określ domyślny rozmiar i położenie
Nie wszystkie aplikacje (nawet z możliwością zmiany rozmiaru) muszą mieć duże okno, aby zaoferować użytkownikowi wartość.
Aby określić domyślny rozmiar i pozycję podczas uruchamiania aktywności, możesz użyć metody ActivityOptions#setLaunchBounds()
.
Włączanie trybu pełnoekranowego na pulpicie
Aplikacje mogą przejść do trybu pełnoekranowego za pomocą wywołania Activity#requestFullScreenMode()
.
Metoda włącza tryb pełnoekranowy bezpośrednio w oknie pulpitu.