Dam*_*les 31 layout android listview
我想要的很简单,至少我认为这很简单.我只想要一个窗口,其中EditText位于屏幕的底部,其余的空间用ListView填充.不幸的是,它没有像我预期的那样工作.我想要的是下图.有没有简单的方法在XML中执行此操作,还是应该为此编写一些特殊代码?

我有问题的Android源代码.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/demolist"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
>
</ListView>
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0">
</EditText>
</LinearLayout >
Run Code Online (Sandbox Code Playgroud)
soo*_*j.e 19
你想要什么
没有键盘的最后可见项目

带键盘的最后一个可见项目

最后可见项目输入较大

我是怎么做到的.
摘要
细节
活动
<activity android:name="MainActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan"></activity>
Run Code Online (Sandbox Code Playgroud)
聊天视图
Run Code Online (Sandbox Code Playgroud)<RelativeLayout android:id="@+id/chat_header" android:layout_width="fill_parent" android:layout_height="40dp" android:padding="3dp" > <Button android:id="@+id/btnBackChat" android:layout_width="35dp" android:layout_height="35dp" android:layout_alignParentLeft="true" android:background="@drawable/back_button" /> <TextView android:id="@+id/txt_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/btnBackChat" android:layout_centerHorizontal="true" android:textColor="@android:color/white" android:textSize="18sp" /> <ImageView android:id="@+id/imgViewProfileChat" android:layout_width="35dp" android:layout_height="35dp" android:layout_alignParentRight="true" /> </RelativeLayout> <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_above="@+id/form" android:layout_below="@+id/chat_header" android:stackFromBottom="true" android:transcriptMode="alwaysScroll"/> <RelativeLayout android:id="@+id/form" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:orientation="vertical" > <ImageButton android:id="@+id/btnAttach" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:contentDescription="@string/attach" android:src="@drawable/attach_icon" /> <EditText android:id="@+id/txtChat" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_toLeftOf="@+id/btnSend" android:layout_toRightOf="@+id/btnAttach" android:inputType="textMultiLine" android:maxLines="4" /> <Button android:id="@+id/btnSend" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:text="@string/send" /> </RelativeLayout>
我想你可能想在显示键盘之前使用AdapterView.getLastVisiblePosition().
两个解决方案:
然后使用AdapterView.setSelection在EditText焦点后跳转到此项(或索引 - 2或索引 - 3).
| 归档时间: |
|
| 查看次数: |
20809 次 |
| 最近记录: |