Android - макет каталога с большой плотностью (2,25) - PullRequest
0 голосов
/ 16 сентября 2018

У меня странная ошибка в Samsung Galaxy Tab E (Nougat 7.0 API 24): у меня есть 2 каталога раскладок (layout и layout-sw600dp), когда я меняю «Масштаб экрана» в «Настройках» на «Огромный»Устройство по какой-то причине берет XML из каталога layout, а не из layout-sw600dp, для всех остальных плотностей он работает отлично, за исключением этого.

Есть ли решение для этой ошибки

Ответы [ 2 ]

0 голосов
/ 16 сентября 2018

Это не только в устройствах Galaxy, но вы можете иметь это на любом устройстве, превосходящем систему sw .

Поэтому вместо создания определенных папок, таких как layout-sw600 и т. Д., Я рекомендую создавать определенные макеты с помощью ConstraintLayout.

ConstraintLayout не только делает ваш макет гибким, но и регулирует его размер в зависимости от увеличенияили уменьшение Density Pixels устройств, а также сохраняет ваши.Время разработки.Я давно сталкивался с подобной проблемой и решил использовать ConstraintLayout для того же самого.

Хорошую кодовую метку от Google на ConstraintLayout можно найти здесь:

https://codelabs.developers.google.com/codelabs/constraint-layout/index.html?index=..%2F..%2Fio2018#0

Надеюсь, поможет.Удачи.

0 голосов
/ 16 сентября 2018

Система будет использовать ту, которая ближе всего ( без превышения ) к наименьшей ширине устройства, но когда для параметра «Масштаб экрана» установлено значение «Огромный», наименьшая ширина устройства превышает 600dp.

И ваши файлы макета имеют только две папки (layout и layout-sw600dp), поэтому, наконец, система выбирает папку layout.

...