使用mvxlistview显示列表列表

时间:2013-08-14 11:20:50

标签: android xamarin.ios mvvmcross

我想显示一个列表列表我的数据是一个ObservableCollection,其中SomeClass中有另一个ObservableCollection。

这是代码: 这是主要清单:

<Mvx.MvxListView
        android:id="@+id/MenuList"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        local:MvxBind="ItemsSource Path=Dishes"
        local:MvxItemTemplate="@layout/menuitemtemplate"            
        android:background="@color/backgroundlightgray"
        android:layout_weight="1" />

这是项目模板,里面有另一个列表

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res/Com.TasteITAndroidClient"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:minWidth="25px"
android:minHeight="25px">
<TextView
    android:text="Text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/textView1"
    android:gravity="right"
    android:textSize="16dp"
    android:textStyle="bold"
    android:textColor="#ff000000"
    android:background="@color/white"
    android:padding="10dp" />
<Mvx.MvxListView
    android:id="@+id/CategoryDishes"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    local:MvxBind="ItemsSource Path=Items"
    local:MvxItemTemplate="@layout/userpagedishtemplate"
    style="@style/ToolBarImage"
    android:background="@color/backgroundlightgray"       
    android:layout_below="@+id/textView1"
    android:layout_marginTop="5dp" />

userpagedishtemplate显示该项目。

基本上它可以工作,但我得到的是非常小的列表,显示1-2个项目,尽管我在subList上指定了height = wrap_content。

我错过了什么吗?我应该做些什么吗?

由于

阿米特

1 个答案:

答案 0 :(得分:0)

在另一个垂直滚动的ListView中放置一个垂直滚动的ListView可能会导致用户触摸区域混乱 - 列表滚动...

如果你真的想要一个列表中的列表,那么你可以使用你已经开始的布局 - 但你可能需要给内部列表提供一些垂直大小的帮助 - 超过wrap_content < / p>

或者,对于非常小的内部列表,您可以考虑切换到MvxLinearLayout。

或者,您可以考虑使内部列表水平滚动。

或者,您可以考虑使用支持多态的适配器将列表折叠到单个列表中,以确定是显示标题单元格还是内部单元格。