App-Ressourcen wie Bitmaps und Layouts sind in typspezifischen
im Verzeichnis res/
jedes Moduls befinden. Sie können auch alternative
Versionen jeder Datei, die für verschiedene Geräte optimiert sind
Konfigurationen, wie z. B. eine hochauflösende Version einer Bitmap für
Bildschirmen.
Android Studio unterstützt Sie beim Hinzufügen neuer Ressourcen und alternativer Ressourcen in mehreren je nachdem, welche Art von Ressource Sie hinzufügen möchten. Auf dieser Seite wird beschrieben, wie Sie grundlegende Ressourcendateien hinzufügen, den Speicherort Ihrer Ressourcen ändern und wie Ressourcenzusammenführung funktioniert.
Auf den folgenden Seiten finden Sie weitere Informationen zum Erstellen von bestimmte Ressourcentypen:
- Informationen zum Hinzufügen von Layoutdateien finden Sie unter UI mit dem Layout-Editor erstellen.
- Informationen zum Hinzufügen von Stringdateien finden Sie unter UI mit dem Translation Editor lokalisieren.
- Informationen zum Hinzufügen von Bitmaps finden Sie unter App-Symbole mit Image Asset Studio erstellen.
- Informationen zum Hinzufügen von SVG-Dateien finden Sie unter Vektorgrafiken mit mehreren Dichten hinzufügen.
Informationen zum Verweisen auf die Ressourcen Ihrer App Code finden Sie unter App-Ressourcen – Übersicht
XML-Ressourcendatei hinzufügen
Obwohl die Links oben die Workflows beschreiben, Ressourcentyp, können Sie eine beliebige XML-Ressourcendatei hinzufügen. Gehen Sie dazu folgendermaßen vor: Schritte:
Klicken Sie entweder im Fenster Project (Projekt) auf das Ziel-App-Modul Android- oder Projekt-Ansicht.
- Wählen Sie Datei > Neu > Android-Ressourcendatei.
- Geben Sie im Dialogfeld die erforderlichen Informationen ein:
<ph type="x-smartling-placeholder">
- </ph>
- Dateiname: Geben Sie den Namen der XML-Datei ein.
.xml
. - Ressourcentyp: Wählen Sie den Ressourcentyp aus, den Sie erstellen möchten.
- Stammelement: Wählen Sie gegebenenfalls das XML-Stammelement für die -Datei. Einige Ressourcentypen unterstützen nur einen Typ von Stammelementen. Je nach für den ausgewählten Ressourcentyp haben, kann dieser möglicherweise nicht bearbeitet werden.
- Quellsatz: Wählen Sie den Quellsatz aus, in dem Sie die Datei speichern möchten.
- Verzeichnisname: Der Name des Verzeichnisses muss spezifisch sein. den Ressourcentyp und die Konfigurationsqualifizierer. Bearbeiten Sie das Feld nur, Sie die Konfigurationsqualifizierer Verzeichnisnamen manuell. Verwenden Sie stattdessen Verfügbare Qualifier.
- Verfügbare Qualifier: Statt Konfigurationsqualifizierer manuell hinzuzufügen im Verzeichnisnamen, können Sie sie hinzufügen, indem Sie einen Qualifizierer aus der und klicken Sie auf Hinzufügen .
- Dateiname: Geben Sie den Namen der XML-Datei ein.
- Wenn Sie alle gewünschten Kennzeichner hinzugefügt haben, klicken Sie auf OK.
Tipp: So öffnen Sie eine vereinfachte Version des Dialogfelds Neue Ressourcendatei: für den Ressourcentyp, den Sie hinzufügen möchten, klicken Sie mit der rechten Maustaste Ressourcenverzeichnis im Ordner res und wählen Sie Neu > type-name-Ressourcendatei.
Komplexe XML-Ressourcen inline einbinden
Einige komplexe Ressourcen erfordern mehrere XML-Ressourcendateien. Beispiel: Das animierte Vektor-Drawable enthält ein Vektor-Drawable-Objekt und ein Animationsobjekt und erfordert mindestens drei XML-Dateien.
In diesem Beispiel können Sie die drei separaten XML-Dateien erstellen und beibehalten, wenn Sie eine oder mehrere der . Werden die XML-Dateien jedoch nur für dieses animierte Vektor-Drawable verwendet, können Sie stattdessen das Inline-Ressourcenformat im Android-Asset verwenden. Packaging Tool (AAPT). Mit AAPT können Sie alle drei Ressourcen in einer XML-Datei definieren -Datei. Weitere Informationen finden Sie unter Inline komplexer XML-Code. Ressourcen
Ressourcenverzeichnis hinzufügen
So fügen Sie ein neues Ressourcenverzeichnis hinzu:
Klicken Sie im Fenster Projekt auf das Ziel-App-Modul.
- Wählen Sie Datei > Neu > Android-Ressourcenverzeichnis.
- Geben Sie im Dialogfeld die erforderlichen Informationen ein:
<ph type="x-smartling-placeholder">
- </ph>
- Verzeichnisname: Der Name des Verzeichnisses muss spezifisch sein. auf den Ressourcentyp und die Kombination von Konfigurationsqualifizierern. Das sollten Sie nicht tun: bearbeiten, es sei denn, Sie möchten dem Verzeichnisnamen manuell. Verwenden Sie stattdessen Verfügbare Qualifier.
- Ressourcentyp:Wählen Sie den Ressourcentyp für das Verzeichnis aus.
- Quellsatz: Wählen Sie den Quellsatz aus, in dem sich das Verzeichnis befinden soll.
- Verfügbare Qualifier:Anstatt Konfigurationsqualifizierer manuell hinzuzufügen, im Verzeichnisnamen, können Sie sie hinzufügen, indem Sie einen Qualifizierer aus der und klicken Sie auf Hinzufügen .
- Wenn Sie alle gewünschten Kennzeichner hinzugefügt haben, klicken Sie auf OK.
Ressourcenverzeichnis ändern
Standardmäßig befinden sich Ihre Ressourcen an folgendem Ort:
module-name/src/source-set-name/res/
Ressourcen für den Hauptquellsatz Ihres Moduls befinden sich beispielsweise in src/main/res/
,
und die Ressourcen für den Quellsatz der Fehlerbehebung befinden sich in src/debug/res/
.
Sie können diese Pfade jedoch auch in
Standort (relativ zur Datei build.gradle
) mit der Eigenschaft res.srcDirs
im sourceSets
-Block. Beispiel:
Cool
android { sourceSets { main { res.srcDirs = ['resources/main'] } debug { res.srcDirs = ['resources/debug'] } } }
Kotlin
android { sourceSets { getByName("main") { res.srcDirs("resources/main") } getByName("debug") { res.srcDirs("resources/debug") } } }
Sie können auch mehrere Ressourcenverzeichnisse für einen Quellsatz angeben und dann und die Build-Tools führen sie zusammen. Beispiel:
Cool
android { sourceSets { main { res.srcDirs = ['res1', 'res2'] } } }
Kotlin
android { sourceSets { main { res.srcDirs("res1", "res2") } } }
Weitere Informationen finden Sie in den Quellgruppen.
Ressourcen zusammenführen
Ressourcen in Ihrer endgültigen Anwendungsdatei können aus drei Quellen stammen:
- Hauptquellensatz (im Allgemeinen in
src/main/res/
) - Quellsätze für Varianten erstellen
- Android-Bibliotheken (AAE)
Wenn alle Ressourcen aus jedem Quellsatz oder jeder Bibliothek eindeutig sind, sind sie alle in der finalen App hinzugefügt. Eine Ressource gilt als eindeutig, wenn ihr Dateiname eindeutig in beiden Verzeichnis resource type und die Ressourcenqualifizierer (falls definiert).
Wenn es zwei oder mehr übereinstimmende Versionen derselben Ressource gibt, ist in der endgültigen App nur eine Version enthalten. Mit den Build-Tools wählen Sie Version gemäß der folgenden Prioritätsreihenfolge (höchste Priorität) auf der linken Seite):
<ph type="x-smartling-placeholder"></ph> Build-Variante > Build-Typ > Produktgeschmack > Hauptquellensatz > Bibliotheksabhängigkeiten
Beispiel: Der Hauptquellsatz enthält:
res/layout/example.xml
res/layout-land/example.xml
Der Debug-Build-Typ enthält Folgendes:
res/layout/example.xml
Dann enthält die finale App res/layout/example.xml
aus dem Debug-Build-Typ und
res/layout-land/example.xml
aus dem Hauptquellensatz.
Wenn in Ihrer Build-Konfiguration jedoch mehrere Ressourcenordner für und es Konflikte zwischen diesen Quellen gibt, wird ein Fehler und die Zusammenführung schlägt fehl, da jedes Ressourcenverzeichnis Priorität haben.