xamarin android ListView手动分组

     xamarin的listview控件其实自带有分组方法,关于xamarin listview的自带分组方法请自行参考官方文档,我这里只写自己写的分组方法。xamarin自带的分组好是好,功能多,但是加载有点慢。而对于我的项目来说并不需要那么多的功能,但需要自定义的样式和快速反应。所以有如下方式,关键在于数据分组插入分组数据和定义样式模板,对应不同数据显示相应模板。

     一:对model添加一个分组字段,并把字段值生成出来。

     二:要分组先对数据按分组字段排序。

     三:在每个分组数据前添加一个model,并把分组字段值带赋值,其他字段为空。

     四:定义listview控件的DataTemplate,对普通数据显示一个展示的DataTemplate,对于分组数据,改DataTemplate为分组的头样式模板。

     五:把定义为头的数据的点击事件屏蔽掉,只有判断model值是否为空即可轻松区分,是否时分组头的数据。

     六:将数据赋值给listView。

如果能够单独在android层写样式那更方便,但是在xamarin中需要弄的代码量比较大一点,而如果DataTemplate放在公用代码则方便的多。但不够灵活。用以上方法参考了聊天列表显示时,对方对话显示和己方对话显示定义不同DataTemplate的方式。

原文地址:https://www.cnblogs.com/zuimengaitianya/p/6245157.html