我正在使用LinearLayout
垂直方向,在该布局中我有四个ListView
。这个布局放在ScrollView
内。
我的问题是ScrollView
没有滚动。所以我无法看到我的所有列表视图。
我在做的是:
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView1"
android:layout_width="wrap_content"
android:layout_height="600dp"
android:fillViewport="true" >
<LinearLayout
android:id="@+id/frag_capt2"
android:layout_width="800dp"
android:layout_height="match_parent"
android:layout_marginLeft="100dp"
android:layout_marginTop="20dp"
android:orientation="vertical" >
<TextView
android:id="@+id/linearlayoutteamtv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/ListView01team"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/pm_cool_listproject_background" >
</ListView>
<TextView
android:id="@+id/linearlayoutteamtv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/ListView02team"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/pm_cool_listproject_background" >
</ListView>
<TextView
android:id="@+id/linearlayoutteamtv3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/ListView03team"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/pm_cool_listproject_background" >
</ListView>
<TextView
android:id="@+id/linearlayoutteamtv4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/ListView04team"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/pm_cool_listproject_background" >
</ListView>
</LinearLayout>
</ScrollView>
我不明白我的代码遗失了什么。
答案 0 :(得分:1)
listview
NOT 应位于任何滚动元素内,反之亦然。请看看谷歌开发者对此有何看法。请查看Video
答案 1 :(得分:1)
你可以设置所有四个listview height..like ...
<ListView
android:id="@+id/lst_tree_hazard"
android:layout_width="fill_parent"
android:layout_height="80dp" ///set the height based on your listview content
android:scrollbars="none" >
</ListView>
答案 2 :(得分:0)
ScrollView
您不需要ListView
。我认为您可以轻松使用RelativeLayout
并指定ListViews
答案 3 :(得分:0)
通常,您不能将可滚动的东西放在其他可滚动的东西中,它们以相同的方向滚动,并且结果是可靠的。偶尔这会起作用(例如WebViews
中的ViewPager
),但这是例外,而不是常态。
或者:
将ListView
移出ScrollView
或
将ScrollView的所有其余内容移动到ListView中,无论是使用addHeaderView()
还是MergeAdapter
答案 4 :(得分:0)
你不能这样做!但是,您可以解决问题,单个列表中的多种类型的列表项。单一类型列表项之间的差异:
(header, list1_type, list2_type,... main_header?, main_footer?)
,覆盖getViewTypeCount()
getItemViewType(...)
,
is index_of_header -> 0
is index_of_type1 -> 1
is index_of_type2 -> 2
getView(...)
convertView
参数是当前项类型的视图,应该重用它,如果不是null!您可以为合并适配器创建自己的抽象类,如另一个答案中所述。它基本上就是我上面解释的内容。有时你不能使用合并适配器,即。递归结构,但最好考虑使用ExpandableListView
。