У меня есть несколько макетов для поддержки разных размеров экрана:
layout-sw320dp (smallest phones, 4.0" and smaller)
layout-sw360dp (approximately 4.7-5")
layout-sw400dp (most phones right now, 5-6")
Примечание: это значенияиз вкладки Design
в Layout Editor
из Android Studio.(Пример для layout-sw320dp
)
![enter image description here](https://i.stack.imgur.com/MXRYB.png)
Первый макет (layout-sw320dp
) для экранов малого размера был разработан в Android Emulator
на Nexus S
Второй макет (layout-sw360dp
) был разработан на реальном устройстве Samsung Galaxy A3 2017 - 4.7''
Оба они работают!Каждая раскладка вызывается в соответствии с размером экрана телефона: layout-sw320dp
на Nexus S
, что составляет 4.0'
и layout-sw360dp
, на моем телефоне 4.7"
.
Моя проблема возникает с layout-sw400dp
, который долженвызываться на устройствах с 5"
и выше.Для этого макета у меня есть еще один реальный телефон Samsung Galaxy S7 edge - 5.5"
, но на этом телефоне приложение вызывает layout-sw360dp
вместо layout-sw400dp
.Это происходит только на моем реальном телефоне.В Android Emulator
на Pixel XL
(который имеет те же характеристики экрана, что и S7 edge
- 5.5"
и такое же разрешение) приложение вызывает правильный макет.
Обновление: Пример для layout-sw400dp
![enter image description here](https://i.stack.imgur.com/Zp8zA.png)
Мои вопросы: Почему это происходит?Как я могу решить, что телефоны с 5"
и больше вызывают другую раскладку, чем layout-sw360dp
?