【问题标题】:How to set Header and Footer with Scrolling Content in Android where footer does not sit above keypad?如何在页脚不位于键盘上方的 Android 中使用滚动内容设置页眉和页脚?
【发布时间】:2016-03-29 11:10:03
【问题描述】:

我在布局活动中使用带有可滚动内容的自定义页眉和页脚。我面临的问题是“当键盘弹出时,页脚会出现键盘”。此外,背景图像会缩小。即使键盘打开,我也必须将页脚保持在底部并拉伸图像。我试图设置 android:windowSoftInputMode="stateHidden|adjustPan" 但是当最后一个edittext被聚焦时我的标题离开了屏幕。请帮忙。这是我的主要布局

main_layout:

<RelativeLayout 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="@drawable/dashboard">

<include
    android:id="@+id/toolbar"
    layout="@layout/header_image"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true" />

<include
    android:id="@+id/footer"
    layout="@layout/footer"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" />

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/footer"
    android:layout_below="@+id/toolbar"
    android:fillViewport="true">

    <LinearLayout style="@style/linear_layout_inside_scrollview">

        <TextView
            style="@style/text_view_white"
            android:gravity="center"
            android:textSize="@dimen/large_text"
            android:lineSpacingExtra="@dimen/line_space"
            android:text="@string/email_check_label" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <EditText
            style="@style/edit_text_pre_login"
            android:layout_marginTop="@dimen/inputs_margin"
            android:gravity="center" />

        <Button
            android:id="@+id/goToMobileCheck"
            style="@style/pre_login_button"
            android:layout_marginTop="@dimen/inputs_margin"
            android:onClick="goToMobileCheck"
            android:text="@string/next" />
    </LinearLayout>
</ScrollView>

【问题讨论】:

    标签: android xml android-layout android-studio android-manifest


    【解决方案1】:

    只需使用--

    android:windowSoftInputMode="adjustPan"
    

    【讨论】:

    • 我也试过了,正如我在问题中提到的那样。但是,在这种情况下,当关注较低的编辑文本时,布局会自行平移以将我的标题从屏幕中抛出......
    【解决方案2】:

    尝试在您的 ypur 布局活动中将以下内容添加到您的 AndroidManifest

    android:windowSoftInputMode="stateAlwaysHidden|adjustResize"
    android:configChanges="keyboardHidden"
    

    【讨论】:

    • 不...它不起作用。页脚仍在键盘上,背景图像缩小.....:(
    • 可能是您的布局不正确,否则它可以正常工作。我会说使用 Linearlayout 和 layout-weight 来生成正确的 xml 文件。
    • 你有代码吗?我也尝试过线性布局。但问题仍然是一样的......
    猜你喜欢
    • 2012-12-05
    • 2023-04-08
    • 2023-03-28
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 2012-03-11
    • 2011-05-03
    • 1970-01-01
    相关资源
    最近更新 更多