项目之间具有特定间距的 ListView
Posted
技术标签:
【中文标题】项目之间具有特定间距的 ListView【英文标题】:ListView with specific spacing between items 【发布时间】:2017-12-04 18:17:03 【问题描述】:我有一个ListView
并希望根据这两个项目增加/减少项目之间的间距。我基本上让项目随机交替边,并希望当项目在相对侧时间距增加。
我知道如何平均增加所有项目之间的间距,但在涉及特定行时不知所措。
【问题讨论】:
【参考方案1】:只需比较相应列表行的数据,并为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。
如果您想添加填充,只需在您的 View
上调用 setPadding()
方法即可。
【讨论】:
以上是关于项目之间具有特定间距的 ListView的主要内容,如果未能解决你的问题,请参考以下文章
具有相等项目间距的自定义 UICollectionViewLayout