我有一个ListView
带有一个相对布局,EditText
它下面包含一个。
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="@color/transparent"
android:dividerHeight="10sp"
android:background="@color/transparent"
android:scrollbars="none"
android:stackFromBottom="false"
android:transcriptMode="normal">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/chatInput"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:focusable="true"
android:inputType="textMultiLine"
android:lines="2"
android:maxLines="5"
android:singleLine="false"
android:scrollbars="vertical"
android:focusableInTouchMode="true"
style="@style/NomadlyTheme.EditText"
android:hint="Enter text here"
android:layout_weight="0.9"
android:textColor="@color/black"/>
</RelativeLayout>
当我单击EditText
并显示软输入时,我希望ListView
至少从底部显示与键盘出现之前显示的相同项目:
软输入前:
__________
| 7 |
| 8 |
| 9 | <- ListView
| 10 |
|____11____|
|__________| <- EditText
软输入后:
__________
| 9 |
| 10 |
|____11____|
|__________|
| Keyboard |
|__________|
现在,当 的最后一个元素ListView
可见时,就会发生上述情况。但是当只有中间元素可见时,会发生这种情况:
软输入前:
__________
| 3 |
| 4 |
| 5 | <- ListView
| 6 |
|____7_____|
|__________| <- EditText
软输入后:
__________
| 3 |
| 4 |
|____5_____|
|__________|
| Keyboard |
|__________|
我已经windowSoftInputMode=adjustResize
在我的清单中设置了这个活动。请告诉我如何让项目向上滚动。