RecyclerView 实现瀑布流 数据横向竖向排序

纵向

在这里插入图片描述

代码实现

  • recycleActivity.xml



  • RecycleActivity.class
public class RecycleActivity extends AppCompatActivity {List list=new ArrayList<>();@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_recycle);//添加50条测试数据for (int i=1;i<50;i++){list.add(new Bean(i));}RecyclerView recyclerView = findViewById(R.id.recycleView1);//布局加载器  StaggeredGridLayoutManager.HORIZONTAL 为纵向   StaggeredGridLayoutManager.VERTICAL 为横向recyclerView.setLayoutManager(new StaggeredGridLayoutManager(6,StaggeredGridLayoutManager.HORIZONTAL));recyclerView.setAdapter(new RecyclerAdapter(list));}}
  • RecyclerAdapterViewHolder
public class RecyclerAdapter extends RecyclerView.Adapter {List list;public RecyclerAdapter(List list1) {list=list1;}@NonNull@Overridepublic MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {View inflate = LayoutInflater.from(parent.getContext()).inflate(R.layout.item1, parent, false);return new MyViewHolder(inflate);}@Overridepublic void onBindViewHolder(@NonNull  RecyclerAdapter.MyViewHolder holder, int position) {holder.id.setText(list.get(position).getA()+" ");}@Overridepublic int getItemCount() {return list.size();}class MyViewHolder extends RecyclerView.ViewHolder{TextView id;public MyViewHolder(@NonNull View itemView) {super(itemView);id = itemView.findViewById(R.id.id1);}}
}
  • item1布局



  • Bean 实体类
public class Bean {private int a;public Bean(int i) {a=i;}public int getA() {return a;}public void setA(int a) {this.a = a;}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部