Android RecycleView固定3列且有行距
时间: 2024-02-01 09:03:35 浏览: 28
要实现Android上固定3列且有行距的RecyclerView,你可以使用GridLayoutManager并设置spanCount为3。然后,使用ItemDecoration来为每个item添加行距。
以下是一个示例代码段:
```java
GridLayoutManager layoutManager = new GridLayoutManager(context, 3);
recyclerView.setLayoutManager(layoutManager);
int spacingInPixels = context.getResources().getDimensionPixelSize(R.dimen.spacing);
recyclerView.addItemDecoration(new SpacesItemDecoration(spacingInPixels));
```
其中,SpacesItemDecoration是一个自定义的ItemDecoration类,用于为每个item添加间距。你可以根据自己的需要调整间距的大小。
```java
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.getChildAdapterPosition(view) == 0) {
outRect.top = space;
} else {
outRect.top = 0;
}
}
}
```
这样,你就可以实现一个固定3列且有行距的RecyclerView了。