我在屏幕底部对齐按钮时遇到问题,此按钮始终保持在该位置,并且我有一个填充屏幕的scrollView。 scrollView有EditText,问题是当我按下EditText时,自动必须移动EditText并放在键盘上,但在这种情况下,底部的按钮放在键盘上
这是当前显示的方式
这是你应该如何显示EditText应该放在键盘上方以便顺利写入,并且不应该显示按钮
这是我的布局
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fillViewport="true"
tools:context=".MainActivity">
<ScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:layout_weight="1">
<LinearLayout
android:id="@+id/linScroll"
android:layout_margin="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<EditText
android:id="@+id/txt1"
android:layout_marginTop="10dp"
android:hint="1"
android:layout_width="match_parent"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt2"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="2"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt3"
android:layout_marginTop="10dp"
android:hint="3"
android:layout_width="match_parent"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt4"
android:layout_marginTop="10dp"
android:hint="4"
android:layout_width="match_parent"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt5"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="5"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt6"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="6"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt7"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="7"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt8"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="8"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt9"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="9"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt10"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="10"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt11"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="11"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt12"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="12"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt13"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="13"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt14"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="14"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt15"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="15"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt16"
android:layout_marginTop="10dp"
android:hint="16"
android:layout_width="match_parent"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt17"
android:layout_marginTop="10dp"
android:hint="17"
android:layout_width="match_parent"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt18"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="18"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt19"
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:hint="19"
android:layout_height="40dp" />
<EditText
android:id="@+id/txt20"
android:layout_marginTop="10dp"
android:hint="20"
android:layout_width="match_parent"
android:layout_height="40dp" />
</LinearLayout>
</ScrollView>
<Button
android:id="@+id/btn"
android:text="SOY UN BOTON"
android:layout_width="match_parent"
android:layout_height="40dp" />
</LinearLayout>
感谢您的帮助
答案 0 :(得分:0)
用以下内容替换您的代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:orientation="vertical"
tools:context=".MainActivity">
<ScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:fillViewport="true">
<LinearLayout
android:id="@+id/linScroll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="vertical">
<EditText
android:id="@+id/txt1"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="1" />
<EditText
android:id="@+id/txt2"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="2" />
<EditText
android:id="@+id/txt3"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="3" />
<EditText
android:id="@+id/txt4"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="4" />
<EditText
android:id="@+id/txt5"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="5" />
<EditText
android:id="@+id/txt6"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="6" />
<EditText
android:id="@+id/txt7"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="7" />
<EditText
android:id="@+id/txt8"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="8" />
<EditText
android:id="@+id/txt9"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="9" />
<EditText
android:id="@+id/txt10"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="10" />
<EditText
android:id="@+id/txt11"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="11" />
<EditText
android:id="@+id/txt12"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="12" />
<EditText
android:id="@+id/txt13"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="13" />
<EditText
android:id="@+id/txt14"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="14" />
<EditText
android:id="@+id/txt15"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="15" />
<EditText
android:id="@+id/txt16"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="16" />
<EditText
android:id="@+id/txt17"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="17" />
<EditText
android:id="@+id/txt18"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="18" />
<EditText
android:id="@+id/txt19"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="19" />
<EditText
android:id="@+id/txt20"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:hint="20" />
<Button
android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="40dp"
android:text="SOY UN BOTON" />
</LinearLayout>
</ScrollView>
</LinearLayout>
答案 1 :(得分:0)
我要尝试的第一件事是设置按钮的重量并将按钮和滚动视图的高度都更改为0dp,在设置布局比例(如果使用权重)时应避免使用dp。
其次,如果您只是想让应用程序在打开软键盘时不按下布局(这就是按钮出现在软键盘正上方的原因)设置
<activity
...
android:windowSoftInputMode="adjustPan">
</activity>
清单中的。