我有一个包含listview的活动,在底部有edittext和bottom对齐 类似于whatsapp默认激活 当我单击底部的edittext时,软键盘会向下推动编辑文本,但它会对列表视图执行相同的操作,因此列表视图的底部部分会在按钮和文本视图下消失
这是我的XML
<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="wrap_content"
android:orientation="vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.test.testsms.app.SMSList">
<ListView
android:id="@+id/contactList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:dividerHeight="0px"
android:divider="#00000000"
>
</ListView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:text="@string/app_name"
android:id="@+id/Button"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Button>
<EditText
android:id="@+id/EditText"
android:layout_width="fill_parent"
android:layout_toLeftOf="@id/Button"
android:layout_height="wrap_content">
</EditText>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:2)
如果要使用键盘向上推动edittext,则必须设置RelativeLayout而不是主RinearLayout。因此,edittext和按钮中包含的LinearLayout将位于活动的底部。当你点击edittext时,键盘就会被推上去。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
...<ListView>
<EditText
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_alignParentBottom="true"
android:selectAllOnFocus="true"
android:textStyle="normal"
>
</EditText>
</RelativeLayout>
答案 1 :(得分:1)
编辑AndroidManifest.xml并添加/修改您的活动的android:windowSoftInputMode属性。请参阅http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft以获取每个选项可以执行的操作的列表。听起来你可能想尝试adjustPan