Recyclerview 项目作为堆栈
Recyclerview items as a stack
是否可以将 android Recyclerview
个项目创建为堆栈。多个项目需要放在顶部 item.Also 需要查看前一个项目底部的堆栈项目。
public class OverlapDecoration extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(Rect outRect, View view,
RecyclerView parent,
RecyclerView.State state) {
final int itemPosition = parent.getChildAdapterPosition(view);
if (itemPosition == 0) {
return;
}
outRect.set(0, -150, 0, 0);
}
}
recyclerView.addItemDecoration(new OverlappDecoration());
recyclerview.setLayoutManager(new LinearLayoutManager(context));
使用
从底部堆叠物品
LinearLayoutmanager layoutManager = new LinearLayoutManager(this);
layoutManager.setReverseLayout(true);
并在装饰器中提供 bottom
边距 top
边距
public class OverlapDecoration extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(Rect outRect, View view,
RecyclerView parent,
RecyclerView.State state) {
final int itemPosition = parent.getChildAdapterPosition(view);
if (itemPosition == 0) {
return;
}
outRect.set(0, 0, 0, -150);//<-- bottom
}
}
recyclerView.addItemDecoration(new OverlappDecoration());
recyclerview.setLayoutManager(new LinearLayoutManager(context));
是否可以将 android Recyclerview
个项目创建为堆栈。多个项目需要放在顶部 item.Also 需要查看前一个项目底部的堆栈项目。
public class OverlapDecoration extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(Rect outRect, View view,
RecyclerView parent,
RecyclerView.State state) {
final int itemPosition = parent.getChildAdapterPosition(view);
if (itemPosition == 0) {
return;
}
outRect.set(0, -150, 0, 0);
}
}
recyclerView.addItemDecoration(new OverlappDecoration());
recyclerview.setLayoutManager(new LinearLayoutManager(context));
使用
从底部堆叠物品LinearLayoutmanager layoutManager = new LinearLayoutManager(this);
layoutManager.setReverseLayout(true);
并在装饰器中提供 bottom
边距 top
边距
public class OverlapDecoration extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(Rect outRect, View view,
RecyclerView parent,
RecyclerView.State state) {
final int itemPosition = parent.getChildAdapterPosition(view);
if (itemPosition == 0) {
return;
}
outRect.set(0, 0, 0, -150);//<-- bottom
}
}
recyclerView.addItemDecoration(new OverlappDecoration());
recyclerview.setLayoutManager(new LinearLayoutManager(context));