Android Studio: создание макетов ландшафта

nth-of-type работает в соответствии с индексом того же типа элемента, но nth-child работает только в соответствии с индексом независимо от того, какой тип элементов сиблингов.

Например

<div class="one">...</div>
<div class="two">...</div>
<div class="three">...</div>
<div class="four">...</div>
<div class="five">...</div>
<div class="rest">...</div>
<div class="rest">...</div>
<div class="rest">...</div>
<div class="rest">...</div>
<div class="rest">...</div>

Предположим, что в выше html мы хотим скрыть все элементы, имеющие класс отдыха.

В этом случае nth-child и nth-of-type будут работать точно так же, как и все элементы одного типа, <div>, поэтому css должен быть

.rest:nth-child(6), .rest:nth-child(7), .rest:nth-child(8), .rest:nth-child(9), .rest:nth-child(10){
    display:none;
}

OR

.rest:nth-of-type(6), .rest:nth-of-type(7), .rest:nth-of-type(8), .rest:nth-of-type(9), .rest:nth-of-type(10){
    display:none;
}

Теперь вам должно быть интересно узнать, в чем разница между nth-child и nth-of-type, так что это разница

Предположим, что html is

<div class="one">...</div>
<div class="two">...</div>
<div class="three">...</div>
<div class="four">...</div>
<div class="five">...</div>
<p class="rest">...</p>
<p class="rest">...</p>
<p class="rest">...</p>
<p class="rest">...</p>
<p class="rest">...</p>

В приведенном выше html тип элемента .rest отличается от других .rest - это абзацы, а другие - div, поэтому в этом случае if вы используете nth-child, вы должны писать так

.rest:nth-child(6), .rest:nth-child(7), .rest:nth-child(8), .rest:nth-child(9), .rest:nth-child(10){
    display:none;
}

, но если вы используете nss-тип css, это может быть

.rest:nth-of-type(1), .rest:nth-of-type(2), .rest:nth-of-type(3), .rest:nth-of-type(4), .rest:nth-of-type(5){
    display:none;
}

Как тип Элементом .rest является <p>, поэтому здесь nth-of-type обнаруживает тип .rest, а затем он накладывает css на 1-й, 2-й, 3-й, 4-й, 5-й элементы <p>.

29
задан mrd 2 March 2015 в 17:21
поделиться

5 ответов

На самом деле вы можете использовать layout-land в Android Studio, и он будет отображаться в вашем каталоге res следующим образом:

layout-land

Если это не так t убедитесь, что ваш проект установлен в Project, а не Android.

Project Scope

Если вы все еще не видите его, вы можете создать его, щелкнув правой кнопкой мыши по каталогу res и выбрав New -> Android resource directory и заполнив подсказку ниже.

New directory

Кроме того, после того, как он был создан, вы можете легко переключаться с портретного на альбомный в предварительном просмотре макета с помощью кнопки ориентации на панели инструментов над предварительным просмотром макета. Это изображено ниже:

Orientation Toggle

71
ответ дан MrEngineer13 2 March 2015 в 17:21
поделиться

Вы также можете использовать опцию, приведенную на рисунке ниже.

enter image description here

Надеюсь, вы поняли.

36
ответ дан pathe.kiran 2 March 2015 в 17:21
поделиться

MrEngineer13 ответ на месте.

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

Просто для пояснения: после заполнения имени Справочника и типа ресурса выберите «Ориентация» в списке «Доступные квалификаторы», и вы увидите скриншот, предоставленный MrEngineer13.

1
ответ дан Treehouse 2 March 2015 в 17:21
поделиться

Принятый ответ на самом деле серьезно устарел. В Android Studio 3.x.x нет необходимости создавать дополнительную папку макета (в любом случае я не уверен, что это было необходимо).

Также нет необходимости менять масштаб проекта с Android на Project, как вам говорит принятый ответ.

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

Всего 2 шага:

1) Откройте базовый макет пользовательского интерфейса в режиме ДИЗАЙН , чтобы вы могли видеть фактический графический интерфейс пользователя, например кнопки, значки и т. Д. это как текст, в режиме просмотра кода XML).

2) Щелкните значок, отмеченный на снимке экрана ниже, и в меню выберите Создать изменение ландшафта (помечено на скриншоте как «Нажмите 2-й»).

Затем Studio делает всю работу за вас, и это работает как шарм. Нет необходимости добавлять дополнительный код и дополнительные папки не создаются.

Наслаждайтесь.

Android Studio 3.1.4:

enter image description here

8
ответ дан deLock 2 March 2015 в 17:21
поделиться

В Project -> app -> src -> main -> res

Затем создайте каталог ресурсов Android, выберите Ориентация

1
ответ дан ketan 2 March 2015 в 17:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: