ScrollView не работает, когда клавиатура поднята

Eмαd спросил: 27 ноября 2017 в 05:44 в: android

Мне нужно использовать макет <scrollview>, который состоит из некоторого EditTexts и линейного элемента Buttons внизу, но проблема заключается в том, когда программная клавиатура отсутствует, макет не scroll и полностью скрывает Buttons ', а основной линейный (@+id/main) исчезает с экрана!

Вот резюме моего макета:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="#03A9F4"
  android:gravity="center"
  >  <RelativeLayout
    android:id="@+id/main"
    android:layout_width="310dip"
    android:layout_height="485dip"
    android:background="#03A9F4"
    android:gravity="center">    <RelativeLayout
      android:layout_width="match_parent"
      android:layout_height="435dip"
      android:layout_alignParentBottom="true"
      android:layout_alignParentTop="false"
      android:background="@drawable/border_signup_signin_auth">      <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">        <LinearLayout
          android:layout_width="match_parent"
          android:layout_height="70dip"
          android:orientation="vertical"
          tools:ignore="UselessLeaf">
        </LinearLayout>        <ScrollView
          android:id="@+id/ScrollMain"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:isScrollContainer="false"
          >          <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">            <LinearLayout
              android:layout_width="match_parent"
              android:layout_height="80dip"
              android:baselineAligned="false"
              android:orientation="horizontal"
              android:paddingLeft="10dip"
              android:paddingRight="10dip">              <LinearLayout
                android:layout_width="0dip"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical"
                android:paddingEnd="5dip"
                tools:ignore="RtlSymmetry">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"/>
              </LinearLayout>              <LinearLayout
                android:layout_width="0dip"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"/>
              </LinearLayout>
            </LinearLayout>            <LinearLayout
              android:layout_width="match_parent"
              android:layout_height="80dip"
              android:baselineAligned="false"
              android:orientation="horizontal"
              android:paddingLeft="10dip"
              android:paddingRight="10dip">              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical"
                android:paddingEnd="5dip"
                tools:ignore="RtlSymmetry">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  />
              </LinearLayout>              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"/>
              </LinearLayout>
            </LinearLayout>            <LinearLayout
              android:layout_width="match_parent"
              android:layout_height="70dip"
              android:baselineAligned="false"
              android:orientation="horizontal"
              android:paddingLeft="10dip"
              android:paddingRight="10dip">              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical"
                android:paddingEnd="5dip"
                tools:ignore="RtlSymmetry">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"/>
              </LinearLayout>              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical">                <com.rengwuxian.materialedittext.MaterialEditText
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  />
              </LinearLayout>
            </LinearLayout>            <LinearLayout
              android:layout_width="match_parent"
              android:layout_height="70dip"
              android:orientation="vertical"
              android:paddingEnd="10dip"
              tools:ignore="RtlSymmetry">              <com.rengwuxian.materialedittext.MaterialEditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                />            </LinearLayout>            <LinearLayout
              android:layout_width="match_parent"
              android:layout_height="60dip"
              android:baselineAligned="false"
              android:orientation="horizontal"
              android:paddingLeft="5dip"
              android:paddingRight="5dip">              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical">                <Button
                  android:id="@+id/btnSignUp"
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:text="test"
                  android:textSize="16sp"/>
              </LinearLayout>              <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="0.5"
                android:orientation="vertical">                <Button
                  android:id="@+id/btnGuest"
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:text="test"
                  android:textSize="16sp"
                  />
              </LinearLayout>
            </LinearLayout>
          </LinearLayout>
        </ScrollView>      </LinearLayout>
    </RelativeLayout>    <ImageView
      android:id="@+id/imageView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_centerInParent="false"
      android:contentDescription="TODO"
      app:srcCompat="@mipmap/signup"
      tools:ignore="ContentDescription"/>  </RelativeLayout>
</LinearLayout>

И в манифесте я попробовал атрибут:

android:windowSoftInputMode="adjustResize"

Кроме того, я пробовал решения с такими же вопросами, как:

, но не работает для меня.

Кто-нибудь знает, почему это не работает?
Заранее спасибо!


0 ответов