Android 滚动视图中的两个listview
我有两个列表视图。我需要滚动一个列表视图作为另一个列表视图的延续。在列表之间应该有一个文本视图。如果在scrollview中使用两个listview和textview,我将无法同时滚动列表。如果使用不带scrollview的listview,我可以看到两个listview,但滚动不会继续Android 滚动视图中的两个listview,android,android-layout,listview,android-listview,Android,Android Layout,Listview,Android Listview,我有两个列表视图。我需要滚动一个列表视图作为另一个列表视图的延续。在列表之间应该有一个文本视图。如果在scrollview中使用两个listview和textview,我将无法同时滚动列表。如果使用不带scrollview的listview,我可以看到两个listview,但滚动不会继续 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="f
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FAF0BE" >
<Button
android:id="@+id/btnheader"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="#A1CAF1"
android:text="DisoderDetail" />
<TextView
android:id="@+id/txtTmtDnam"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/btnheader"
android:layout_marginLeft="@dimen/marginLLeft"
android:layout_marginTop="@dimen/marginTopp"
android:text="jgjggjh"
android:textColor="#000000" />
<TextView
android:id="@+id/txtdisDdtail"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/txtTmtDnam"
android:layout_marginLeft="@dimen/marginLLeft"
android:layout_marginTop="@dimen/marginTopp"
android:text="jgjggjh hjhhhjh jhjhh"
android:textColor="#000000" />
<RelativeLayout
android:id="@+id/Rvlytt2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/lyt2"
android:layout_below="@id/txtdisDdtail"
android:layout_centerHorizontal="true"
android:layout_marginBottom="@dimen/marginBottomm"
android:layout_marginTop="@dimen/marginTop"
android:orientation="horizontal" >
<ImageView
android:id="@+id/starimg1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_marginTop="10dp"
android:onClick="star1Clicked"
android:src="@drawable/starunselected"
android:tag="1" />
<ImageView
android:id="@+id/starimg2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/starimg1"
android:onClick="star2Clicked"
android:src="@drawable/starunselected"
android:tag="2" />
<ImageView
android:id="@+id/starimg3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/starimg2"
android:onClick="star3Clicked"
android:src="@drawable/starunselected"
android:tag="3" />
<ImageView
android:id="@+id/starimg4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/starimg3"
android:onClick="star4Clicked"
android:src="@drawable/starunselected"
android:tag="4" />
</RelativeLayout>
<ScrollView
android:id="@+id/Scrlvw"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_below="@id/Rvlytt2" >
<RelativeLayout
android:id="@+id/rvl1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/txtDcmt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="@dimen/marginTop"
android:text="comment"
android:textColor="#000000" />
<ListView
android:id="@+id/lstvwDis11"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/txtDcmt" >
</ListView>
</RelativeLayout>
<RelativeLayout
android:id="@+id/rvl2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/rvl1"
>
<TextView
android:id="@+id/txtDrate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@id/lstvwDis11"
android:layout_marginTop="@dimen/marginTop"
android:text="Rate"
android:textColor="#000000" />
<ListView
android:id="@+id/lstvwDis12"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/txtDrate" >
</ListView>
</RelativeLayout>
</ScrollView>
<RelativeLayout
android:id="@+id/Rvlt22"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" >
<EditText
android:id="@+id/Edtcmmt"
android:layout_width="250dp"
android:layout_height="50dp"
android:layout_marginLeft="5dp"
android:background="#ffffff"
android:hint="Add a comment"
android:textColor="#000000" />
<Button
android:id="@+id/btnpost"
android:layout_width="130dp"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/Edtcmmt"
android:onClick="OnPostbtnclick"
android:text="Post" />
</RelativeLayout>
</RelativeLayout>
在
滚动视图
中放置列表视图
时,我使用以下方法设置列表视图高度,滚动操作正常。将所有视图添加到listview后使用此选项
public static void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
if (listItem instanceof ViewGroup) {
listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
}
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
}
}
public static void setListViewHeightBasedOnChildren(ListView ListView){
ListAdapter ListAdapter=listView.getAdapter();
如果(listAdapter==null){
//前提条件
返回;
}
int totalHeight=listView.getPaddingTop()+listView.getPaddingBottom();
对于(int i=0;i
对于初学者来说,这不是正确的设计,但如果您想坚持这种设计,一个能让代码正常工作的快速修复方法是将两个列表视图放在另一个列表视图中,并将其放在滚动视图下。这应该可以解决你的滚动问题。把listView
放在scrollView
中,这是一个非常糟糕的主意。你应该回顾一下你的设计。你所说的“继续”是什么意思?侧滚动视图中的列表视图不是很好的编程方式。而不是设置列表视图的高度。请不要尝试在任何父滚动容器内使用任何滚动容器视图。试试这个,兄弟。这样你才能理解他们的评论。