ListView与项目之间的特定间距

时间:2017-06-30 17:53:22

标签: android listview spacing

我有一个stage.hitArea,并且希望项目之间的间距增加/减少,具体取决于这两个项目。我基本上随机地交替使用物品,并且当物品位于相对侧时希望间距增加。 我知道如何平等地增加所有项目之间的间距,但是当涉及到特定的行时却不知所措。

1 个答案:

答案 0 :(得分:2)

只需比较相应列表行的数据,并为View添加适当的边距或填充。

只是一个例子(有点难以在没有看到任何代码的情况下提供特定帮助):

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = LayoutInflater.from(someContext)
    View row = inflater.inflate(R.layout.some_layout, parent, false);

    if (position > 0) {
        Data previous = someDataset.get(position - 1);
        Data current = someDataset.get(position);

        if (previous.something() == current.something()) {
            // add margin or padding to row
        }
    }

    // set TextView texts, ImageView images etc., whatever your row has

    return row;
}

如果您不知道如何以编程方式向View添加保证金,则有许多现有问题,here's an answer

如果您想添加填充,只需在setPadding()上调用View方法。