Menedżer zasobów to okno narzędziowe, które umożliwia importowanie, tworzenie, zarządzanie i używanie zasobów w aplikacji. Aby otworzyć to okno, w menu kliknij View (Widok) > Tool Windows (Okna narzędziowe) > Resource Manager (Menedżer zasobów) lub wybierz Resource Manager (Menedżer zasobów) na pasku bocznym po lewej stronie.

Rysunek 1. Okno narzędzia Resource Manager.
- Kliknij Dodaj
, aby dodać nowy zasób do projektu. Możesz dodać komponenty z obrazami, komponenty wektorowe
komponenty, czcionki lub pliki i wartości zasobów albo możesz
zaimportować elementy rysowalne do projektu.
- Wybierz moduł, aby wyświetlić zasoby charakterystyczne dla tego modułu.
- Wyszukaj zasób we wszystkich modułach projektu za pomocą paska wyszukiwania.
- Wyświetl zasoby według
typu w
Resource Managerze.
Użyj tych kart, aby przełączać się między typami zasobów. Kliknij ikonę przepełnienia
, aby wyświetlić dodatkowe typy zasobów. - Filtruj wyświetlane zasoby z lokalnych modułów zależnych, bibliotek zewnętrznych i platformy Android za pomocą przycisku filtra. Możesz też użyć filtra, aby wyświetlić atrybuty motywu.
- Wyświetl podgląd zasobów w głównym obszarze treści. Kliknij zasób prawym przyciskiem myszy, aby wyświetlić menu kontekstowe, w którym możesz zmienić nazwę zasobu i wyszukać w aplikacji miejsca, w których jest on używany.
- Kliknij te przyciski, aby wyświetlić zasoby jako kafelki lub listy.
- Kliknij te przyciski, aby zmienić rozmiar podglądu zasobów.
Oprócz tych funkcji Resource Manager umożliwia zbiorcze importowanie obiektów rysowalnych do projektu. Aby zaimportować zbiorczo, możesz:
- Przeciągnij pliki graficzne — w tym pliki SVG — bezpośrednio do Menedżera zasobów.
- użyć kreatora Import Drawables (Importuj elementy rysowalne).
Więcej informacji znajdziesz w sekcji Importowanie elementów rysowalnych do projektu.
Aby wyświetlić bardziej szczegółowe informacje, kliknij dwukrotnie zasób w Menedżerze zasobów. Jeśli masz kilka wersji zasobu, w tym widoku szczegółowym wyświetli się każda wersja wraz z powiązanymi kwalifikatorami, jak pokazano na rysunku 2. Możesz kliknąć dwukrotnie konkretną wersję, aby otworzyć ją w oknie edytora.

Rysunek 2. Menedżer zasobów wyświetla wersje zasobu graficznego dla różnych gęstości ekranu.
Importowanie elementów rysowalnych do projektu
Za pomocą Resource Managera możesz importować zasoby graficzne do projektu. Listę obsługiwanych typów obrazów znajdziesz w sekcji Obsługa obrazów.
Aby zaimportować zasoby graficzne do projektu:
Przeciągnij obrazy bezpośrednio do okna Resource Manager (Menedżer zasobów) w Android Studio.
- Możesz też:
- Kliknąć ikonę plusa (+).
- Wybrać Import Drawables (Importuj elementy rysowalne), jak pokazano na rysunku 3.
- Wybrać pliki i foldery, które chcesz zaimportować.

Rysunek 3. Wybierz Import Drawables (Importuj elementy rysowalne) z menu.
- Możesz też:
Pojawi się okno Import drawables (Importuj elementy rysowalne), jak pokazano na rysunku 4. W tym oknie wyświetla się lista importowanych zasobów. Możesz zmienić nazwy zasobów, klikając pole nad podglądem zasobu.
Jeśli udostępniasz kilka wersji tego samego zasobu, dodaj kwalifikatory konfiguracji urządzenia, które opisują konkretną konfigurację obsługiwaną przez każdy zasób. Zrobisz to w sposób opisany w następnej sekcji.
Jeśli na przykład udostępniasz kilka wersji tego samego zasobu dla różnych gęstości ekranu, możesz dodać kwalifikator Density (Gęstość) dla każdej wersji. Pamiętaj, że jeśli 2 lub więcej zasobów ma tę samą nazwę i kwalifikatory, importowana jest tylko 1 wersja.
Więcej informacji o kwalifikatorach zasobów znajdziesz w artykule Udostępnianie zasobów alternatywnych.

Rysunek 4. Okno Import drawables (Importuj elementy rysowalne).
Gdy nadasz nazwy zasobom i dodasz niezbędne kwalifikatory, kliknij Next (Dalej).
Na następnym ekranie zobaczysz podsumowanie importowanych zasobów. Gdy wszystko będzie gotowe do importu, kliknij Import (Importuj).
W oknie Resource Manager (Menedżer zasobów) zasoby są teraz gotowe do użycia w projekcie, jak pokazano na rysunku 5.

Rysunek 5. Resource Manager wyświetla teraz zaimportowane obrazy.
Automatyczne analizowanie gęstości elementów rysowalnych
Gdy importujesz plik lub folder, a jego ścieżka zawiera kwalifikator gęstości, Resource Manager automatycznie stosuje ten kwalifikator podczas importu. Resource Manager może analizować zarówno kwalifikatory gęstości Androida, jak i współczynniki skalowania iOS.
W tej tabeli znajdziesz informacje o tym, jak różne obsługiwane gęstości są reprezentowane w Androidzie i iOS:
| Gęstość | Kwalifikator gęstości Androida | Współczynnik skalowania iOS |
|---|---|---|
| Niska gęstość (~120 dpi) | ldpi |
nieobsługiwane |
| Średnia gęstość (~160 dpi) | mdpi |
skala oryginalna |
| Wysoka gęstość (~240 dpi) | hdpi |
nieobsługiwane |
| Bardzo wysoka gęstość (~320 dpi) | xhdpi |
@2x |
| Ekstremalnie wysoka gęstość (~480 dpi) | xxhdpi |
@3x |
| Niesamowicie wysoka gęstość (~640 dpi) | xxxhdpi |
@4x |
Oto kilka przykładów tego, jak ścieżki wejściowe są przekształcane w ścieżki zasobów po imporcie:
- Kwalifikator gęstości Androida:
hdpi - Ścieżka wejściowa: /UserFolder/icon1/hdpi/icon.png
Ścieżka zasobu: <projectFolder>/<moduleFolder> /src/main/res/drawable-hdpi/icon.png - Kwalifikator gęstości Androida:
xxhdpi - Ścieżka wejściowa: /UserFolder/icon1/abc-xxhdpi/icon.png
Ścieżka zasobu: <projectFolder>/<moduleFolder> /src/main/res/drawable-xxhdpi/icon.png - Współczynnik skalowania iOS: @2x
- Ścieżka wejściowa: /UserFolder/icon1/icon@2x.png
Ścieżka zasobu: <projectFolder>/<moduleFolder> /src/main/res/drawable-xhdpi/icon.png - Współczynnik skalowania iOS: @2x
- Ścieżka wejściowa: /UserFolder/icon1/icon@2x_alternate.png
Ścieżka zasobu: <projectFolder>/<moduleFolder> /src/main/res/drawable-xhdpi/icon_alternate.png
Więcej informacji o obsłudze urządzeń o różnej gęstości pikseli znajdziesz w artykule Obsługa różnych gęstości pikseli.
Używanie zasobów w Jetpack Compose
Podczas tworzenia aplikacji za pomocą Jetpack Compose możesz uzyskiwać dostęp do zasobów bezpośrednio z kodu Kotlin za pomocą zoptymalizowanych interfejsów API, co zapewnia synchronizację logiki interfejsu i odwołań do zasobów.
- Obrazy: użyj
painterResource(id = R.drawable.your_image)w komponencieImage. - Ciągi: użyj
stringResource(id = R.string.your_string), aby pobrać zlokalizowany tekst interfejsu. - Kolory: użyj
colorResource(id = R.color.your_color), aby zastosować kolory zdefiniowane w motywie.
Menedżer zasobów dba o to, aby te identyfikatory były generowane prawidłowo, co pozwala bezproblemowo odwoływać się do zasobów z hierarchii interfejsu Compose.
Więcej informacji o zaawansowanej obsłudze zasobów, w tym o dynamicznym wczytywaniu czcionek, zasobach specyficznych dla konfiguracji i bibliotekach zasobów specyficznych dla Compose, znajdziesz w dokumentacji Zasoby w Compose.