Resource Manager è una finestra degli strumenti per importare, creare, gestire e utilizzare le risorse nella tua app. Per aprire la finestra degli strumenti, seleziona Visualizza > Finestre degli strumenti > Resource Manager dal menu o seleziona Resource Manager nella barra laterale sinistra.
- Fai clic su Aggiungi
per aggiungere una nuova risorsa al progetto. Puoi aggiungere asset immagine, asset vettoriali, caratteri o file e valori di risorse oppure puoi importare elementi drawable nel progetto.
- Seleziona un modulo per visualizzare le risorse specifiche di quel modulo.
- Cerca una risorsa in tutti i moduli del progetto utilizzando la barra di ricerca.
- Visualizza le risorse in base al tipo in Resource Manager.
Utilizza queste schede per passare da un tipo di risorsa all'altro. Fai clic sull'icona di overflow
per visualizzare altri tipi di risorse. - Filtra le risorse visualizzate da moduli dipendenti locali, librerie esterne e framework Android utilizzando il pulsante di filtro. Puoi anche utilizzare il filtro per mostrare gli attributi del tema.
- Visualizza l'anteprima delle risorse nell'area dei contenuti principali. Fai clic con il tasto destro del mouse su una risorsa per visualizzare un menu contestuale in cui puoi rinominare la risorsa e cercare nella tua app dove viene utilizzata.
- Fai clic su questi pulsanti per visualizzare le risorse sotto forma di riquadri o elenchi.
- Fai clic su questi pulsanti per modificare le dimensioni dell'anteprima delle risorse.
Oltre a queste funzionalità, Resource Manager offre un modo per importare in blocco i drawable nel progetto. Per eseguire l'importazione collettiva, puoi:
- Trascina i file immagine, inclusi i file SVG, direttamente in Gestione risorse.
- Utilizza la procedura guidata Importa elementi drawable.
Per saperne di più, consulta la sezione Importa gli elementi drawable nel progetto.
Per visualizzare informazioni più dettagliate, fai doppio clic su una risorsa in Resource Manager. Se hai più versioni di una risorsa, questa visualizzazione dettagliata mostra ogni versione insieme a tutti i qualificatori associati, come mostrato nella figura 2. Da qui, puoi fare doppio clic su una versione specifica per aprirla in una finestra dell'editor.
Importa gli elementi drawable nel progetto
Puoi utilizzare Resource Manager per importare risorse immagine nel tuo progetto. Per un elenco dei tipi di immagini supportati, consulta Supporto delle immagini.
Per importare le risorse immagine nel progetto, segui questi passaggi:
Trascina le immagini direttamente nella finestra Gestione risorse di Android Studio.
- In alternativa puoi:
- Fai clic sull'icona Più (+).
- Scegli Importa elementi drawable, come mostrato nella Figura 3.
- Seleziona i file e le cartelle da importare.
Figura 3. Seleziona Importa elementi drawable dal menu. - In alternativa puoi:
Viene visualizzata la finestra di dialogo Importa elementi drawable, come mostrato nella Figura 4. Questa finestra di dialogo mostra un elenco delle risorse che stai importando. Puoi rinominare le risorse facendo clic sulla casella sopra l'anteprima di una risorsa.
Se fornisci più versioni della stessa risorsa, aggiungi i qualificatori di configurazione del dispositivo, come descritto nella sezione seguente, che descrivono la configurazione specifica supportata da ogni risorsa.
Ad esempio, se fornisci più versioni della stessa risorsa per densità dello schermo diverse, puoi aggiungere un qualificatore Densità per ogni versione. Tieni presente che se due o più risorse hanno lo stesso nome e gli stessi qualificatori, viene importata una sola versione.
Per saperne di più sui qualificatori delle risorse, consulta Fornisci risorse alternative.
Figura 4. La finestra di dialogo Importa elementi drawable. Dopo aver assegnato un nome alle risorse e aggiunto eventuali qualificatori necessari, fai clic su Avanti.
La schermata successiva mostra un riepilogo delle risorse che stai importando. Quando è tutto pronto per l'importazione, fai clic su Importa.
Nella finestra Gestione risorse, le risorse sono ora pronte per essere utilizzate nel progetto, come mostrato nella figura 5.
Analizza automaticamente le densità dei drawable
Quando importi un file o una cartella e il relativo percorso contiene un qualificatore di densità, Resource Manager applica automaticamente il qualificatore di densità nell'ambito dell'importazione. Resource Manager può analizzare sia i qualificatori di densità di Android sia i fattori di scalabilità di iOS.
Questa tabella elenca il modo in cui le diverse densità supportate sono rappresentate per Android e iOS:
| Densità | Qualificatore di densità Android | Fattore di scalabilità per iOS |
|---|---|---|
| Bassa densità (~120 dpi) | ldpi |
non supportato |
| Densità media (~160 dpi) | mdpi |
scala originale |
| Alta densità (~240 dpi) | hdpi |
non supportato |
| Densità molto alta (~320 dpi) | xhdpi |
@2x |
| Densità extra-extra-alta (~480 dpi) | xxhdpi |
@3x |
| Densità molto molto molto alta (~640 dpi) | xxxhdpi |
@4x |
Ecco alcuni esempi di come i percorsi di input vengono tradotti in percorsi delle risorse dopo l'importazione:
- Qualificatore di densità Android:
hdpi - Percorso di input: /UserFolder/icon1/hdpi/icon.png
Percorso della risorsa: <projectFolder>/<moduleFolder> /src/main/res/drawable-hdpi/icon.png - Qualificatore di densità Android:
xxhdpi - Percorso di input: /UserFolder/icon1/abc-xxhdpi/icon.png
Percorso della risorsa: <projectFolder>/<moduleFolder> /src/main/res/drawable-xxhdpi/icon.png - Fattore di scalabilità iOS: @2x
- Percorso di input: /UserFolder/icon1/icon@2x.png
Percorso della risorsa: <projectFolder>/<moduleFolder> /src/main/res/drawable-xhdpi/icon.png - Fattore di scalabilità iOS: @2x
- Percorso di input: /UserFolder/icon1/icon@2x_alternate.png
Percorso della risorsa: <projectFolder>/<moduleFolder> /src/main/res/drawable-xhdpi/icon_alternate.png
Per saperne di più sui dispositivi supportati con densità di pixel diverse, consulta Supporta densità di pixel diverse.
Utilizzo delle risorse in Jetpack Compose
Quando crei con Jetpack Compose, accedi alle risorse direttamente dal tuo codice Kotlin utilizzando API ottimizzate, assicurandoti che la logica della UI e i riferimenti alle risorse rimangano sincronizzati.
- Immagini: utilizza
painterResource(id = R.drawable.your_image)all'interno di un componibileImage. - Stringhe: utilizza
stringResource(id = R.string.your_string)per recuperare il testo dell'interfaccia utente localizzato. - Colori: utilizza
colorResource(id = R.color.your_color)per applicare i colori definiti dal tema.
Resource Manager garantisce che questi ID vengano generati correttamente, consentendoti di fare riferimento facilmente ai tuoi asset dalla gerarchia della UI di Compose.
Per informazioni sulla gestione avanzata delle risorse, tra cui il caricamento dinamico dei caratteri, le risorse specifiche per la configurazione e le librerie di risorse specifiche per Compose, consulta la documentazione sulle risorse in Compose.