我想像下面的图片一样实现用户界面。
我使用GridView布局UI,我只获得了具有相同水平间距的下图所示的结果。
我想知道Android GridView是否支持网格项之间的差异大小?如果有任何解决方案或第三方库,请帮助。谢谢。抱歉我的英语不好。
编辑:
根据sgadde和Gary Bak的答案,我使用以下代码计算并在适配器的getView方法的第二列中添加右边距。
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
params.setMargins(0, 0, 20, 0);
viewHolder.numberTextView.setLayoutParams(params);
我得到了以下结果。
我添加网格项边距的代码缩小了网格项的大小。有什么不对吗?请帮助如何添加间距。谢谢。
答案 0 :(得分:1)
您应该计算并向第二列中的项目添加右边距,向第三列中的项目添加左边距。您可以在适配器的getView()中执行此操作。
答案 1 :(得分:1)
在你的适配器的getView方法中你有位置,当你到达位置2,6,10等时,你可以在右边添加添加间距。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
答案 2 :(得分:0)
我的回答有点棘手。
首先,您需要减少horizontalSpacing以调整为方形。
现在,您需要为所有列添加保证金。
有四列,所以
column 1: left margin
column 2: right margin
column 3: left margin
column 4: right margin
这就像你想要的那样。