我正在设计一个加载到Android WebView的登录html页面。 有两个文本区域和一个“登录”按钮固定在页面底部。我的问题是当人输入文本区域时;键盘弹出并隐藏登录按钮。
如何将“登录”按钮固定在页面底部但固定在键盘顶部?
我试过了:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
并且
android:windowSoftInputMode="adjustPan|adjustResize"
两者都没有区别。
答案 0 :(得分:0)
您需要做的是将按钮放在RelativeLayout
内,然后给它以下属性:
android:layout_alignParentBottom="true"
当屏幕调整键盘大小时,按钮会被键盘向上推,因为RelativeLayout
会调整剩余的屏幕空间。
这是一个完整的工作代码示例,只有一个按钮:
<!--Parent view-->
<RelativeLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--Login Button-->
<Button
android:id="@+id/btnLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" />
</RelativeLayout>
修改强>
要将元素固定到网页中页面的底部,您需要对html / css进行以下修改。
.login-button {
position: fixed;
bottom: 0;
width: 100%;
}
按钮文字
答案 1 :(得分:0)
我知道我回答这个问题有点晚了(5 年),但我刚刚遇到了这个问题,并想在这里抛出我的解决方案,以防其他人仍在寻找答案。 .. 这更像是一个 HTML/CSS 问题,我通过将页脚包装在容器中并使用以下 CSS 来解决它
.container {
position: relative;
},
.footer {
width: 100%;
position: absolute;
bottom: 0;
}