【发布时间】:2018-05-01 22:20:04
【问题描述】:
我想要一个像这样的固定页脚:
我尝试使用相对布局来实现这一点:
<RelativeLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/_12sdp"
android:layout_alignParentBottom="true">
<TextView
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_gravity="center_horizontal"
android:textColor="@color/material_grey_850"
android:gravity="center_horizontal"
android:text="Version 1.0 Demo"
android:layout_marginTop="@dimen/_22sdp"
android:textSize="@dimen/_15sdp"
android:id="@+id/versionText" />
<TextView
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_gravity="center_horizontal"
android:textColor="@color/material_grey_850"
android:gravity="center_horizontal"
android:text="Copyright (c) 2017 Aglive Pty Ltd"
android:layout_marginTop="@dimen/_8sdp"
android:textSize="@dimen/_15sdp"
android:id="@+id/copyrightText"
android:layout_alignParentBottom="false"
android:layout_below="@id/versionText" />
<RelativeLayout
android:orientation="vertical"
android:layout_column="0"
android:layout_row="2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_columnSpan="7"
android:layout_marginTop="7.0dp"
android:layout_marginBottom="7.0dp"
android:id="@+id/relative"
android:layout_below="@id/copyrightText">
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_horizontal"
android:textColor="@color/material_grey_850"
android:gravity="center_horizontal"
android:text="Terms of Service"
android:layout_marginTop="21.5sp"
android:layout_alignParentBottom="true"
android:textSize="@dimen/_15sdp"
android:layout_marginRight="5.5sp"
android:id="@+id/termsOfService"
android:layout_alignParentLeft="true"
android:layout_marginLeft="@dimen/_15sdp" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_horizontal"
android:textColor="@color/material_grey_850"
android:gravity="center_horizontal"
android:text="Contact Us"
android:layout_marginTop="21.5sp"
android:layout_alignParentBottom="true"
android:textSize="@dimen/_15sdp"
android:layout_marginRight="@dimen/_15sdp"
android:id="@+id/contactUs"
android:layout_alignParentRight="true" />
</RelativeLayout>
</RelativeLayout>
但这里的问题是,每当键盘打开时,页脚就会向上移动。为此我尝试添加WindowSoftInputMode = SoftInput.AdjustPan。它适用于键盘问题,但只要屏幕旋转到横向模式,页脚就会与其他文本重叠。我的相对布局也不是按要求来的。相对布局似乎覆盖了其他文本。
【问题讨论】:
-
为您的活动设置方向
android:screenOrientation="portrait" -
我希望可能的应用同时具有屏幕方向!!
-
比使用
Constraint layout -
我认为您应该将当前布局放入
ScrollView。当键盘打开时,您计算从顶部到要显示的视图的距离(取决于屏幕尺寸、键盘高度等)。之后,您请求ScrollView滚动到取决于计算距离的位置。
标签: android footer android-relativelayout