扫码关注官方订阅号
业精于勤,荒于嬉;行成于思,毁于随。
基本算是解决了吧,由于PinnedHeaderListView是继承自ListView的,ListView里有个setSelection方法。 解决办法: 遍历数据源List<Dish>,对应PinnedHeaderListView的结构生成一个ArrayList<Integer> positionList(为了区分,可以当为section时positionList.add(1),当为普通list元素时positionList.add(0)),然后将数据为"1"的位置添加到另一个ArrayList<Integer> sectionPositions中,在菜品列表的onClick()事件调用(你的ListView名称).setSelection(sectionPositions.get(i))。 滑动的动画效果没有实现,这方面还不太了解。
List<Dish>
ArrayList<Integer> positionList
positionList.add(1)
positionList.add(0)
ArrayList<Integer> sectionPositions
onClick()
(你的ListView名称).setSelection(sectionPositions.get(i))
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
基本算是解决了吧,由于PinnedHeaderListView是继承自ListView的,ListView里有个setSelection方法。
解决办法:
遍历数据源
List<Dish>,对应PinnedHeaderListView的结构生成一个ArrayList<Integer> positionList(为了区分,可以当为section时positionList.add(1),当为普通list元素时positionList.add(0)),然后将数据为"1"的位置添加到另一个ArrayList<Integer> sectionPositions中,在菜品列表的onClick()事件调用(你的ListView名称).setSelection(sectionPositions.get(i))。滑动的动画效果没有实现,这方面还不太了解。