【问题标题】:Android ScrollView dont scroll when keyboard appears instead make layout smaller键盘出现时Android ScrollView不滚动反而使布局变小
【发布时间】:2018-07-18 19:44:17
【问题描述】:

我在 LinearLayout 中有一个 ScrollView。我希望在键盘出现时布局滚动,但布局的大小会减小。以下是在我的清单“android:windowSoftInputMode="stateHidden|adjustResize"中设置的。有人有什么想法吗?

Layout before keyboard appears Layout after keyboard appears

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/ColorBlack"
    android:orientation="vertical">

    <include
        android:id="@+id/toolbar"
        layout="@layout/toolbar" />

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:fadeScrollbars="true"
        android:orientation="vertical"
        android:fillViewport="true">

        <RelativeLayout
            android:id="@+id/linearLayout_Activity_Contact_First"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/textView_Activity_Contact_Text"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentStart="true"
                android:layout_alignParentTop="true"
                android:layout_gravity="center_horizontal"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:text="@string/editText_KontaktAufnehmen_Text"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textSize="14sp" />


            <EditText
                android:id="@+id/editText_Activity_Contact_Issue"
                android:layout_width="308dp"
                android:layout_height="match_parent"
                android:layout_above="@+id/button_Activity_Contact"
                android:layout_alignBottom="@+id/button_Activity_Contact"
                android:layout_alignParentBottom="true"
                android:layout_below="@+id/textView_Activity_Contact_Text"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="78dp"
                android:layout_marginTop="22dp"
                android:background="@drawable/bordershadow"
                android:fontFamily="sans-serif-thin"
                android:gravity="top"
                android:hint="Schreib uns dein Anliegen (max. 500 Zeichen)"
                android:maxLength="500"
                android:padding="5dp"
                android:textColor="#ffffffff"
                android:textColorHint="@color/ColorTextGray"
                android:textSize="15sp" />

            <Button
                android:id="@+id/button_Activity_Contact"
                android:layout_width="220sp"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:layout_gravity="center_horizontal"
                android:layout_marginBottom="14dp"
                android:background="@drawable/button_background_save_mobilenumber"
                android:fontFamily="sans-serif-thin"
                android:text="@string/editText_Kontakt_ButtonAbschicken"
                android:textColor="@color/ColorBlue"
                android:textStyle="bold" />

        </RelativeLayout>


    </ScrollView>


</LinearLayout>

【问题讨论】:

    标签: android layout scrollview


    【解决方案1】:

    这就是 adjustResize 的作用。它使应用程序调整到键盘上方的空间。如果您希望应用程序仅平移,请使用 adjustPan。在这种情况下,应用程序将向上滚动刚好足以使插入符号出现在屏幕上。

    【讨论】:

    • 当我将其设置为 adjustPan 时,键盘会隐藏布局。我希望键盘出现时整个布局滚动。
    • @ChrisCologne 没有设置。这在 Android 中是不可能的。设置调整大小或平移,以便插入符号留在窗口中
    猜你喜欢
    • 2015-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多