android 布局 空间间隔,RecyclerView 设置item之间的间距

项目需给RecyclerView添加Item间距,可新增辅助类SpacesItemDecoration实现,代码中给出了该类的具体实现及设置间距的方法。此外,还可在Item布局里设置padding值来确定间距。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目需求给recyclerview添加item的间距,需要新增一个辅助类SpacesItemDecoration 。

代码如下:

public class SpacesItemDecoration extends RecyclerView.ItemDecoration {

private int space;

public SpacesItemDecoration(int space) {

this.space = space;

}

@Override

public void getItemOffsets(Rect outRect, View view,

RecyclerView parent, RecyclerView.State state) {

outRect.left = space;

outRect.right = space;

outRect.bottom = space;

// Add top margin only for the first item to avoid double space between items

if (parent.getChildLayoutPosition(view) == 0)

outRect.top = space;

}

public static int px2dp(float dpValue) {

return (int) (0.5f + dpValue * Resources.getSystem().getDisplayMetrics().density);

}

}

代码中设置item间距如下:

int space = 8;

Recyclerview.addItemDecoration(new SpacesItemDecoration(SpacesItemDecoration.px2dp(space)));

还可以在item的布局里设置padding的值,这个值就是item之间的间距。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值