Масштабний коефіцієнт для xxhdpi android?


76

відповідно до http://developer.android.com/training/multiscreen/screendensities.html

Згадані наступні масштабні фактори

xhdpi: 2,0 hdpi: 1,5 mdpi: 1,0 (базовий рівень) ldpi: 0,75

Мені цікаво, яким буде масштабний коефіцієнт для xxhdpi?


Чи підтримує він взагалі xxhdpi? Не як Google пропустити щось із документів
musefan

@musefan, android sdk автоматично створює папку з початку цього року, щонайменше, називається drawable-xxhdpi. Також S4, HTC ONE та Xperia Z є xxhdpi. Я бачив, як вони беруть ресурси з відра xxhdpi. вони набагато вище рівня xhdpi (240)
Мухаммад Ахмед АбуТаліб

див. мою відповідь і тут
mehrdad khosravi

Відповіді:


281

В android.util.DisplayMetrics ви можете бачити, що коефіцієнт масштабування становить 0,00625 :

/**
 * Scaling factor to convert a density in DPI units to the density scale.
 * @hide
 */
public static final float DENSITY_DEFAULT_SCALE = 1.0f / DENSITY_DEFAULT;

Де DENSITY_DEFAULT дорівнює 160 -> коефіцієнт масштабування = 1,0f / 160 = 0,00625.

sizeScale = DENSITY_DEFAULT_SCALE * DENSITY_DPI

Від цього:

  • ldpi = 0,00625 * 120 -> 0,75
  • mdpi = 0,00625 * 160 -> 1,0
  • ІПЧР = 0,00625 * 240 -> 1.5
  • xhdpi = 0,00625 * 320 -> 2,0
  • xxhdpi = 0,00625 * 480 -> 3,0
  • xxxhdpi = 0,00625 * 640 -> 4,0

Не зовсім ракетна наука, але сподіваюся, це комусь стане в нагоді :)



2
Цікаво, чи це все ще правда; на веб-сайті Показники пристроїв Google перелічено масштабування 3,5 і 4,0 для xxxhdpi: design.google.com/devices . Я не знаю, як вирішити цю невідповідність ...
lilbyrdie

4
@lilbyrdie: це все ще тримається. Дивіться коментар для DENSITY_560inandroid.util.DisplayMetrics
ozbek

1
@ozbek: Тож, незважаючи на те, що пристрої можуть мати позначення xxxhdpi, всередині вони не є? Це також означає, що вся графіка масштабована для них? Це звучить не дуже ефективно. Я також бачу, що є ще чотири проміжні щільності ... У будь-якому випадку, дякую за інформацію. Це саме те, що я шукав.
lilbyrdie

2
@ozbek Справді? Це божевільно. Можливо, нам не слід дивуватися. Це заглиблено настільки глибоко в документацію, що навіть самі розробники Google, мабуть, цього не знають :)
the_new_mr

6

Якщо ви подивитесь на Метрики та сітки, то побачите, що xxhdpi становить 480 dpi, що в 3 рази перевищує базову лінію (mdpi @ 1.0). Іншими словами, коефіцієнт масштабу для xxhdpi становить 3,0

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.