Какая раскладка подходит для устройств Android 720x1280?
Я разработал виджет часов. И у меня есть только 1 res/layout и 1 res/drawable. Все работает отлично.
Работает на мдпи, как Samsung Galaxy Ace. Работает на hdpi, как Samsung Galaxy S2. Он работает на xhdpi, как Samsung Galaxy Note.
Однако я получил уродливый взгляд на устройства 720x1280, такие как Samsung Galaxy Nexus или Sony Xperia S. И скоро появится Samsung Galaxy S3.
Когда я предоставляю res/layout/xhdpi, который я создал специально для устройств 720x1280, а затем Galaxy Note, я также буду использовать этот макет, и он выглядит ужасно на Galaxy Note.
Как решить эту проблему?
Это что-то вроде пересечения между 720x1280 (Galaxy Nexus, Sony Xperia S, Galaxy S3) и 800x1280 (Galaxy Note).
2 ответа
Разрешение и DPI устройства не обязательно совпадают (высокое разрешение не означает высокое DPI). DPI - это соотношение разрешения устройства и его физических размеров.
Вместо разделения папок макета по DPI, разделяйте их по размерам. Например, layout-large
, layout-xlarge
, Вы также можете определить количество по конкретным размерам, таким как layout-w720-h1280
, в этом случае это будет соответствовать только устройству с минимальной шириной 720 пикселей и минимальной высотой 1280 пикселей.