Domanda

Qual è la differenza tra i tre cartelle disegnabili nella cartella res nella gerarchia del progetto? Se ho un'immagine di mettere in una cartella, la cartella faccio a metterlo in?

È stato utile?

Soluzione

Ho intenzione di prendere una congettura che "i tre cartelle disegnabili" sono drawable-ldpi, drawable-mdpi e drawable-hdpi. In tal caso, se si bastone con tutte quelle cartelle, è necessario mettere un'immagine di ciascuna, dimensionata per abbinare la densità degli schermi indicato. Questo è discusso nella documentazione in linea così come questo post sul blog . È possibile trovare una serie di progetti di esempio che mostra l'utilizzo di risorse diverse disegnabili basata sulla densità di schermo qui .

Se si sono appena agli inizi dello sviluppo di Android, si può sbarazzarsi di tutti e tre di queste directory e creare una singola directory drawable, mettendo la vostra immagine in là. Alla fine, però, per una domanda di qualità, si vuole mettere alla prova le vostre immagini su differenti dispositivi / emulatori con diverse densità dello schermo, e forse avere immagini diverse per ogni densità per migliorare l'aspetto della vostra applicazione.

Altri suggerimenti

Ecco un riferimento a opzioni multi dispositivo .

Come detto da @CommonsWare, non è necessità per mettere le risorse in qualsiasi cosa, ma res / layout / o drawable / ma se si desidera che il programma per avere una migliore esperienza su più dispositivi con diversi schermi / densità / lingue che si può prendere in considerazione che si ha questa opzione.

Inoltre interessante, anche se non specifiche per le immagini, è come Android risorse maniglie. Dà loro un ordine di caricamento, dove più specifico significa che sarà ottenere raccolti più di meno specifico.

Per esempio, si hanno tre valori di stringa in strings.xml nella cartella valori. Hai anche una stringa specifica in una cartella denominata valori-en. Quando si apre l'Android app e proprio locale corrisponde en, caricherà due impostazioni predefinite dalla cartella valori e la terza, stringa più specifici, da valori-en. Se il locale è ru, sarà solo utilizzare l'impostazione predefinita, invece, perché non si hanno i valori-ru cartella.

Lo stesso vale per le immagini. Se Android non riesce a trovare le immagini per la vostra variante schermata specifica, userà le impostazioni predefinite dalla cartella drawable.

A mio parere è buona norma avere valori di default / immagini in cartelle generici come valori / valori disegnabili e specifici / immagini in cartelle specifiche. In questo modo entrambi i dispositivi attuali e futuri avranno almeno un modo per visualizzare il contenuto fino a quando è possibile fornire versioni specifiche.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top