在一个项目中,使用了listview和3个include 布局。
结果发现listview为 wrap_content 时,无法撑开布局。但是所有布局并未占满屏幕。另外,在include中调用软键盘时,listview依然不动,导致编辑内容的位置比较别扭。
反复试验,总结就是为listview设置高度。但是似乎 listview.setOverScrollMode(View.OVER_SCROLL_NEVER); 不起作用。 布局代码如下:
(由于 ScrollView 内部只能有一个元素,因此用linearLayout 包括其它元素。)
<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" > <Toolbar android:id="@+id/stb" android:layout_width="match_parent"
android:layout_height="wrap_content" /> <ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:orientation="vertical" android:layout_height="wrap_content"> <ListView android:id="@+id/plv" android:layout_width="match_parent" android:layout_height="230dp" tools:ignore="NestedScrolling" /> <include android:id="@+id/plable" layout="@layout/style_lable" /> <include android:id="@+id/poffset" layout="@layout/price_offset" /> <include android:id="@+id/pedit" layout="@layout/style_edit" /> </LinearLayout> </ScrollView> </LinearLayout>