2012-10-23 11 views
73

Tworzę aplikację, która będzie działać na wszystkich urządzeniach z systemem Android. Chcę utworzyć grafikę xhdpi dla mojej aplikacji. Moja aplikacja jest na pełnym ekranie. Jestem zdezorientowany w tworzeniu grafiki. czy ktokolwiek może mi powiedzieć najlepsze rozmiary mojego tła w pikselach.Android: Rozmiar obrazu tła (w pikselach) obsługujący wszystkie urządzenia

na przykład:

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

zaproponować mi najlepsze rozmiary, które pojawi się na wszystkich urządzeniach dobrze. Ponieważ moja grafika jest rdzeniem mojej aplikacji.

Chcę, aby każde urządzenie otrzymało najlepszy obraz, jakiego chce. Android nie będzie zaangażowany w kompresję ani powiększanie obrazu.

+3

Czytaj Android Documentation za, dają standard dla interfejsu użytkownika – RajeshVijayakumar

+0

użytkowania to jedno rozwiązanie to najlepsze dla wszystkich starych i nowych, a na nadchodzące urządzeń. http://stackoverflow.com/a/40255870/2489061 – Umar

Odpowiedz

164

Poniżej przedstawiono najlepsze wymiary aplikacji do uruchamiania na wszystkich urządzeniach. Dla zrozumienia wielu wspiera ekrany trzeba czytać 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

@ i dla xxhdpi? – PankajAndroid

+10

XX powinno być 2x HDPI – LarryBud

+1

ciekawe, nexus 5 to xxhdpi, ale jego rozmiar to 1080x1920 – Roman

3

Rozejrzałem się po Internecie dla prawidłowych wymiarów dla tych gęstościach dla obrazów kwadratowych, ale nie mógł znaleźć coś wiarygodnego.

Jeśli to jakieś pocieszenie, odnosząc się do Veerababu Medisetti's answer użyłem tych wymiarów dla KWADRATY :)

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

To jedno rozwiązanie jest najlepsze dla wszystkich starych i nowych urządzeń. http://stackoverflow.com/a/40255870/2489061 – Umar

33

urządzeń Android Macierze

      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 

(Na dobre podejście minus Toolbar wielkości od całkowitej wysokości Ekran tła, a następnie Projektowanie grafiki ekranów)

Więcej pomocy (dotyczy Link zawiera również tabletki):

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

Android Native Ikony (zalecane) można zmieniać kolor tych ikon programmatically. https://design.google.com/icons/

1

moim rozumieniu jest to, że jeśli używasz View obiektu (jak ma np. android:windowBackground) Android automatycznie przeskalować obraz do właściwej wielkości. Problem polega na tym, że zbyt duże skalowanie może skutkować artefaktami (zarówno podczas skalowania w górę iw dół), jak i rozmyciem. Ze względu na różne rozdzielczości i współczynniki proporcji na rynku, niemożliwe jest stworzenie "idealnego" pasowania na każdy ekran, ale możesz zrobić wszystko, co w twojej mocy, aby wykonać tylko niewielkie skalowanie, a tym samym złagodzić niepożądane efekty uboczne . Więc co mogę zrobić, to:

  • Przechowywać w proporcji 3: skalowania 16 między sześcioma uogólnionych gęstościach (ldpi, MDPI, hdpi itp): 4: 6: 8: 12.
  • Nie należy umieszczać elementów xxxhdpi dla elementów interfejsu użytkownika, ta rozdzielczość służy wyłącznie do skalowania ikon uruchamiania (tylko folder mipmap) ... You should not use the xxxhdpi qualifier for UI elements other than the launcher icon. ...chociaż np. na krawędzi Samsunga 7 dzwoni getDisplayMetrics().density zwraca 4 (xxxhdpi), więc być może ta informacja jest nieaktualna.
  • Następnie spójrz na nowe modele telefonów na rynku i znajdź te reprezentacyjne. Przypisywanie nowego piksela google jest dobrym odzwierciedleniem telefonu z systemem Android: ma rozdzielczość 1080 x 1920 przy rozdzielczości 441 dpi i rozmiar ekranu 4.4 x 2.5 inches. Następnie z the android developer docs:

    • ldpi (LOW) ~ 120 DPI
    • MDPI (średnia) ~ 160dpi
    • hdpi (wysoka) ~ 240dpi
    • xhdpi (bardzo wysokiego) ~ 320dpi
    • xxhdpi (extra-extra-high) ~ 480dpi
    • xxxhdpi (extra-extra-extra-high) ~ 640dpi

    To odpowiada ekranowi xxhdpi. Stąd mogłem przeskalować te 1080 x 1920 w dół o stosunki (3: 4: 6: 8: 12) powyżej.

  • Mogę również przyznać, że próbkowanie w dół jest zwykle łatwym sposobem skalowania, a zatem mogę potrzebować nieco przewymiarowanych bitmap dołączonych do mojego apk (uwaga: większe zużycie pamięci). Ponownie, zakładając, że szerokość i wysokość ekranu pikselowego jest reprezentatywna, skalowałbym 1080x1920 o współczynnik 480/441, pozostawiając obraz tła o maksymalnej rozdzielczości w przybliżeniu. 1200x2100, która powinna być następnie skalowana przez 3: 4: 6: 8: 12.
  • Pamiętaj, że do tworzenia plików bitmapowych (.png, .jpg lub .gif) i plików z dziewięcioma łatami (.9.png) należy dostarczyć tylko rysunki specyficzne dla gęstości. Jeśli używasz plików XML do definiowania zasobów do rysowania (np. Kształty), po prostu umieść jedną kopię w domyślnym katalogu do rysowania.
  • Jeśli musisz zmieścić naprawdę duże lub nieparzyste proporcje, utwórz dla nich również odpowiednie foldery, używając do tego flag, np. sw, long, large, itp.
  • Nie trzeba narysować tła dwukrotnie. Dlatego ustawienie stylu z <item name="android:windowBackground">@null</item>
1

GIMP tool jest dokładnie to, czego potrzebujesz do tworzenia obrazów dla różnych urządzeń pikseli.

Wykonaj następujące kroki:

  1. Otwórz obraz istniejący w narzędzia GIMP.
  2. Przejdź do menu "Obraz" i wybierz "Skaluj obraz ..."
  3. Zastosowanie poniżej wymiaru piksela, że ​​trzeba:

    xxxhdpi: 1280x1920 px

    xxhdpi: 960x1600 px

    xhdpi: 640x960 px

    hdpi: 480x800 px

    MDPI : 320x480 px

    ldpi: 240x320 px

  4. Następnie "Eksportuj" obraz z menu "Plik". Android wsparcie wielu ekranie

Powiązane problemy