RecyclerView没有可以直接设置间距的属性,但是可以用ItemDecoration来实现。需要自定义ItemDecoration,继承自RecyclerView.ItemDecoration. 代码如下:
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.getChildPosition(view) == 0)
        outRect.top = space;
  }
}
然后,初始化RecyclerView之后,设置间距。代码如下:
recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
int itemSpacing = 8;
recyclerView.addItemDecoration(new SpacesItemDecoration(itemSpacing));