我有一个 ListView
并希望根据两个项目增加/减少项目之间的间距。我基本上让项目随机交替,并希望当项目位于相对侧时增加间距。
我知道如何平均增加所有项目之间的间距,但在涉及特定行时却不知所措。
最佳答案
只需比较相应列表行的数据,并在View
中添加适当的margin或padding。
只是一个例子(很难在没有看到你的任何代码的情况下提供具体的帮助):
@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 .
如果您想添加填充,只需在您的View
上调用setPadding()
方法即可。
关于android - 项目之间具有特定间距的 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44852356/