Портрет, Пейзаж в приложении для Android - PullRequest
1 голос
/ 27 апреля 2011

Я занимаюсь проектированием с LinearLayout, который работает для портрета, но ландшафт работает правильно. Я не использую x, y позиции. Если я что-то изменю в xml, это повлияет на дизайн - как мне создать портрет и пейзаж?

Ответы [ 2 ]

4 голосов
/ 27 апреля 2011

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

Таким образом, у вас будет

layout/activity.xml

и

layout-land/activity.xml

Если ваше приложение большого размера, каждый раз, когда вы вносите изменения, может быть больно, но это не так уж и плохо.

Не рекомендуется, но вы также можете избежать изменения ориентации с помощьюподдерживая только книжную ориентацию в вашем приложении: тогда вам придется поместить «android: screenOrientation =« портрет »» в манифест вашего приложения.

1 голос
/ 27 апреля 2011

Вы можете определить второй XML-файл, который является макетом для альбомной версии. Этот файл должен иметь то же имя и помещаться в папку layout-land:

т.е.

Портрет:

layout/main.xml

Пейзаж:

layout-land/main.xml
...