gpt4 book ai didi

android - 可以按列而不是按行填充 'grid-like' View 吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:09:04 24 4
gpt4 key购买 nike

我使用 GridView 显示电视 channel 列表,使用 SimpleCursorAdapter 从数据库中检索 channel 名称。默认行为是填充网格左 -> 右,上 -> 底,如...

1 2
3 4
5 6

GridView 固定为 2 列,如果它超出其父级的垂直边界,显然可以垂直滚动。

我有一个用户希望在移动到下一个之前填充每一列的顶部->底部如此有效我正在寻找具有固定数量的行和某种可水平滚动的“网格”的示例9 行(固定),无垂直滚动,2 列可见和水平滚动...

1 10 | 19
2 11 | 20
3 12 | 21
4 13 | 22
5 14 | 23 <-> 19-27 hidden, but columns scrollable horizontally
6 15 | 24
7 16 | 25
8 17 | 26
9 18 | 27

我知道 GridView 本身不能这样做,但是是否有一个现有的 View 会像这样?如果没有,创建自定义 View 的最佳方法是什么?

谢谢。

最佳答案

你不能用 GridView 做到这一点。您必须创建自定义 View 才能执行此操作。

编辑 - 如果您知道您的网格项目有多大,您可以偷工减料。 GridView 之所以复杂,主要是因为它处理任意大小的项目并动态加载它们。对您来说更简单的方法可能是:

  1. 创建一个 Horizo​​ntalScrollView,里面有一个水平的 LinearLayout
  2. 确定您的项目有多少行适合屏幕。调用此
  3. 虽然您还有需要布局的项目:
    1. 创建一个垂直LinearLayout,向其中添加或更少的项目。
    2. 将新的垂直 LinearLayout 添加到水平布局。

与“水平 GridView”相比,有一些缺点:

  • 所有 View 都会立即加载,这对庞大的项目列表不利。
  • 您需要知道您的商品有多大,并且它们需要大小相同。

优点:

  • 实现起来非常容易。

关于android - 可以按列而不是按行填充 'grid-like' View 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5354292/

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