2012-10-23 30 views
73

Sto creando un'applicazione che verrà eseguita su tutti i dispositivi Android. Voglio creare xhdpi Graphics per la mia app. La mia app è a schermo intero. Sono confuso nella creazione di grafica. qualcuno può dirmi le migliori dimensioni della mia immagine di sfondo in pixel.Android: Dimensione immagine di sfondo (in pixel) che supporta tutti i dispositivi

Per esempio:

  • xhdpi: 720x1280 px
  • hdpi: 480x800 px
  • MDPI: 320x480 px
  • ldpi: 240x320 px

mi suggeriscono le migliori dimensioni che apparirà su tutti i dispositivi buono. Perché la mia grafica è il cuore della mia app.

Voglio che ogni dispositivo ottenga l'immagine migliore che desidera. Android non sarà coinvolto nella compressione o nell'espansione dell'immagine.

+3

Leggi Android Documentazione, danno lo standard per l'interfaccia utente – RajeshVijayakumar

+0

Utilizzare questa soluzione di questo il meglio per tutti i vecchi e nuovi e per i dispositivi futuri. http://stackoverflow.com/a/40255870/2489061 – Umar

risposta

164

Le seguenti sono le dimensioni migliori per l'applicazione da eseguire su tutti i dispositivi. Per comprendere più a sostegno schermi si deve leggere http://developer.android.com/guide/practices/screens_support.html

xxxhdpi: 1280x1920 px 
xxhdpi: 960x1600 px 
xhdpi: 640x960 px 
hdpi: 480x800 px 
mdpi: 320x480 px 
ldpi: 240x320 px 
+5

@e per xxhdpi? – PankajAndroid

+10

XX deve essere 2x HDPI – LarryBud

+1

interessante, nexus 5 è xxhdpi, ma la dimensione dello schermo è 1080x1920 – Roman

3

mi sono guardato intorno in internet per le dimensioni corrette per queste densità di immagini quadrati, ma non ho trovato nulla affidabile.

Se ti può consolare, riferendosi a Veerababu Medisetti's answer ho usato queste dimensioni per PIAZZE :)

xxxhdpi: 1280x1280 px 
xxhdpi: 960x960 px 
xhdpi: 640x640 px 
hdpi: 480x480 px 
mdpi: 320x320 px 
ldpi: 240x240 px 
+0

Utilizza questa soluzione per i dispositivi vecchi, nuovi e futuri. http://stackoverflow.com/a/40255870/2489061 – Umar

33

dispositivi Android Matrici

      ldpi  mdpi  hdpi xhdpi xxhdpi  xxxhdpi 
Launcher And Home   36*36 48*48 72*72 96*96 144*144  192*192 
Toolbar And Tab    24*24 32*32 48*48 64*64 96*96  128*128 
Notification    18*18 24*24 36*36 48*48 72*72  96*96 
Background     240*320 320*480 480*800 768*1280 1080 *1920 1440*2560 

(Per buon approccio meno Toolbar Formato Dal altezza totale Schermata di sfondo e quindi Grafica di progettazione di schermi)

Per ulteriori informazioni (Questo Link include compresse anche):

https://design.google.com/devices/

nativo Android icone (scelta consigliata) È possibile modificare il colore di queste icone programmatically. https://design.google.com/icons/

1

mia comprensione è che se si utilizza un oggetto View (come dovrebbe es. android:windowBackground) Android scalerà automaticamente l'immagine al formato corretto. Il problema è che un eccessivo ridimensionamento può causare artefatti (sia durante la scalatura verticale che verticale) e sfocatura. A causa delle varie risoluzioni e degli aspetti del mercato, è impossibile creare adattamenti "perfetti" per ogni schermo, ma puoi fare del tuo meglio per assicurarti che solo un po 'di ridimensionamento debba essere fatto, e quindi mitigare gli effetti collaterali indesiderati . Quindi quello che vorrei fare è:

  • attenersi alle 3: rapporto di scala 16 tra i sei densità generalizzate (ldpi, MDPI, hdpi, ecc): 4: 6: 8: 12.
  • Non dovresti includere elementi xxxhdpi per i tuoi elementi dell'interfaccia utente, questa risoluzione è pensata solo per le icone di avvio di upscaling (solo per la cartella mipmap) ... You should not use the xxxhdpi qualifier for UI elements other than the launcher icon. ...anche se es. sul bordo Samsung 7 chiamando getDisplayMetrics().density restituisce 4 (xxxhdpi), quindi forse questa informazione non è aggiornata.
  • Quindi guarda i nuovi modelli di telefoni sul mercato e trova quelli rappresentativi. Supponendo che il nuovo pixel di Google sia una buona rappresentazione di un telefono Android: ha una risoluzione 1080 x 1920 a 441 dpi e una dimensione dello schermo di 4.4 x 2.5 inches. Poi dal the android developer docs:

    • ldpi (basso) ~ 120dpi
    • MDPI (medio) ~ 160dpi
    • hdpi (alto) ~ 240 dpi
    • xhdpi (extra-alto) ~ 320dpi
    • xxhdpi (extra-extra-alto) ~ 480dpi
    • xxxhdpi (extra-extra-extra-alto) ~ 640dpi

    Ciò corrisponde a uno schermo xxhdpi. Da qui ho potuto ridimensionare questi 1080 x 1920 con i rapporti (3: 4: 6: 8: 12) sopra.

  • Potrei anche riconoscere che il downsampling è generalmente un modo semplice per ridimensionare e quindi potrei volere bitmap leggermente sovradimensionati in bundle nel mio apk (Nota: maggiore consumo di memoria). Ancora una volta supponendo che la larghezza e l'altezza dello schermo dei pixel siano rappresentative, aumenterei il 1080x1920 di un fattore di 480/441, lasciando la mia immagine di sfondo con la massima risoluzione a ca. 1200x2100, che dovrebbe quindi essere ridimensionato da 3: 4: 6: 8: 12.
  • Ricordare che è necessario fornire solo drawable specifici per densità per file bitmap (.png, .jpg o .gif) e file Nove Patch (.9.png). Se si utilizzano file XML per definire risorse disegnabili (ad esempio forme), è sufficiente inserire una copia nella directory dei disegni predefiniti.
  • Se dovessi mai avere proporzioni veramente grandi o dispari, crea anche cartelle specifiche per questi, usando i flag per questo, es. sw, long, large, ecc.
  • E non è necessario disegnare lo sfondo due volte. Quindi impostare uno stile con <item name="android:windowBackground">@null</item>
1

GIMP tool è esattamente ciò che serve per creare le immagini per i diversi dispositivi di pixel di risoluzione.

procedere come segue:

  1. aprire l'immagine esistente in strumento di GIMP.
  2. Passare al menu "Immagine" e selezionare "Ridimensiona immagine ..."
  3. Usa sotto dimensione dei pixel che è necessario:

    xxxhdpi: 1280x1920 px

    xxhdpi: 960x1600 px

    xhdpi: 640x960 px

    hdpi: 480x800 px

    MDPI : 320x480 px

    ldpi: 240x320 px

  4. Quindi "Esporta" l'immagine dal menu "File". supporto schermo multiplo Android di

Problemi correlati