0

示例数据集:“A”、“B”、“C”、“D”

我想显示 ListView 像: "A"  | "B" | "C"

我不想在多列中显示“A”的详细信息。我想每行显示 3 个项目,而不是 1 个。我不想使用 GridView。

目前我已经成功地做到了这一点。

我用:

public int getCount() {
    if(dataSource!=null){
        return (int) Math.ceil((double)dataSource.size()/3.0f);
    }
    return 0;
}

在 getView 部分,我使用 position*3 来获取接下来 3 个项目的第一个位置,并相应地创建视图 (i+1,i+2)。它完美地工作。除了,只绘制了部分列表。滚动条是正确的,它表明我可以滚动更多,但是在绘制列表的一半之前,突然它没有绘制下半部分并且滚动条只是触及底部。

所以,我除以 3 正在毁掉一些东西。如果我不将计数除以 3,所有项目都会被绘制,但滚动条显示的实际高度是实际高度的 3 倍(因为我在 1 行中绘制 3 个项目而不是3 行。

我在这里想念什么?

4

1 回答 1

0

问题是在 getView() 函数中没有正确应用总行数。现在它起作用了。感谢@scompt.com

于 2013-03-03T17:47:56.707 回答