gpt4 book ai didi

android - 具有不均匀列大小或 Horizo​​ntal StaggeredGridView 的动态适配器 View

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:31:52 27 4
gpt4 key购买 nike

我正在尝试实现下图所示的布局,使用适配器来组成内部 View :

Horizontal Staggered Grid

所有行一起滚动,回收就位。

我没有在 SO 或任何博客上看到很多方法。 FlowLayout 不允许滚动,StaggeredGridView(Etsy 或 Google 的)不允许旋转,同步的多 ListView 似乎太复杂了。

这个自定义组件的 SO 方法是什么?

最佳答案

我的方法是将 n horizontal listviews bundle 在一起在一个 View 组中。监听 View 组上的触摸事件,并一起滚动所有 3 个水平 ListView 。

布局会是这样的——

LinearLayout(vertical)
--HorizontalListView1
--HorizontalListView2
--HorizontalListView3

--HorizontalListView-n

现在将所有触摸事件转发给父 View 组,并在单个 toucheventlistener 中处理它们。在touchevent监听器中,为所有水平的listview计算一个scroll,并调用相应的scroll。

由于所有滚动调用都是在 UI 线程上的单个调用中完成的,因此它们应该在下一个绘图 channel 中处理。这应该让它感觉同步。如果这不起作用,您需要通过扩展它们来显式同步 View 。

有了这个,您将尽可能地使用水平 ListView 进行 View 重用和回收。如果同步到位,所有 View 都应该一起滚动。

关于android - 具有不均匀列大小或 Horizo​​ntal StaggeredGridView 的动态适配器 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22910045/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com