Android ресурс студийного макета для экранов с высотой больше ширины - PullRequest
0 голосов
/ 22 февраля 2020

В android studio Я знаю, что, например, если я создам папку с именем layout-sw600dp , файлы макетов внутри этой папки будут использоваться для экранов с шириной не менее 600 dp. Я хочу знать, есть ли способ назвать папку, которая будет использоваться для экранов с высотой больше ширины? И если нет способа, как создать такое поведение (то есть отдельные макеты для экранов с высотой больше ширины и с шириной больше высоты)?

Ответы [ 2 ]

2 голосов
/ 22 февраля 2020

Вы можете измерить высоту и ширину устройства с помощью этого кода:

View view = getLayoutInflater().inflate(R.layout.your_activity, null); 
//For example, linear layout
LinearLayout linearLayout = (LinearLayout) view.findViewById(R.id.yourlinearlayout);
linearLayout.measure(0,0); 
int width = linearLayout.getMeasuredWidth();
int height = linearLayout.getMeasuredHeight();
if(width > height) {
   // your code here
} 
0 голосов
/ 23 февраля 2020

Вы можете использовать имя папки layout-port - это означает, что устройство находится в портретном режиме (выше, чем широко) или layout-land для ландшафтного режима (шире, чем высота).

См. здесь для получения дополнительной информации о доступных опциях.

...