您可以轻松地完成此操作GridLayout但不能使用GridView.
要在放置项目和设置列数之前找出网格的可用宽度,请设置a ViewTreeObserver.OnGlobalLayoutListener(然后可以放置项目)或扩展GridLayout并覆盖onMeasure (int widthMeasureSpec, int heightMeasureSpec).
在每行内容之后插入一行并将其设置为可见性,Visibility.GONE并将其设置columnSpec为您的列数GridLayout.当用户点击某个项目时,您可以获取该信息,填充其下的视图并展开或动画显示其可见性切换.
最后,对于指标,我只是将其添加为隐藏行的子项,并且当用户点击项目时,计算所述项目的水平中心并将该视图的中心准确地放置在X轴上到该坐标(边距将是对此可以.)
请注意,对于非常大的项目列表,建议不要这样做,因为您必须实例化每个要立即显示的项目,无论它们是否都适合屏幕.不像GridView,GridLayout不是孩子的AbsListView.
| 归档时间: |
|
| 查看次数: |
1939 次 |
| 最近记录: |