Скриншот прокрутки фрагмента Android в альбомной ориентации - PullRequest
0 голосов
/ 19 января 2019

Я относительно новичок в разработке Android и до сих пор учусь.Мне нужна помощь с моими фрагментами.У меня есть фрагмент страницы, который выглядит нормально в портретном режиме, но запутан в ландшафте, как видно на этом скриншоте:

messed up landscape portrait

Я уже пробовал scrollview, ноэто закрывает мое приложение.Прямо сейчас, вот моя часть моего xml-кода:

?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">


<android.support.v7.widget.CardView
    android:id="@+id/cardTop"
    android:layout_width="0dp"
    android:layout_height="300dp"
    android:layout_marginStart="4dp"
    android:layout_marginLeft="4dp"
    android:layout_marginEnd="4dp"
    android:layout_marginRight="4dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <android.support.constraint.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">


   </android.support.v7.widget.CardView>

 </android.support.constraint.ConstraintLayout>

Что мне нужно сделать, чтобы это исправить, или я должен сказать сделать его адаптивным в соответствии с ориентацией экрана?

1 Ответ

0 голосов
/ 19 января 2019

Вы можете исправить это, создав различные XML-макеты для разных ориентаций.Ниже приведены документы Google Developer:

Чтобы указать специфичные для конфигурации альтернативы для набора ресурсов:

  • Создать новый каталог в res / named в форме <resources_name>-<config_qualifier>.

  • <resources_name> - это имя каталога соответствующих ресурсов по умолчанию

  • <qualifier> - это имя, которое указывает индивидуальную конфигурациюдля которых должны использоваться эти ресурсы.

В вашем случае вам нужно создать папку с именем res / named layout-land и разместить альтернативный макет XML с тем же именем, что и уXML-макет, который вы используете в настоящее время.

Если вы не хотите, чтобы ваша активность вращалась, вы можете установить ориентацию своей деятельности как portrait в файле манифеста.

РЕДАКТИРОВАТЬ: Вот пример того, как заставить portrait ориентации.

<activity android:name=".ActivityName"
    android:label="@string/app_name"
    android:screenOrientation="portrait" />

Манифест уже будет иметь тег activity для вашей деятельности.Просто добавьте android:screenOrientation="portrait" к нему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...