网格和线性布局的配置MainActivity
haun.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
haun.setVisibility(View.GONE);
ha.setVisibility(View.VISIBLE);
recycler_view.setLayoutManager(new LinearLayoutManager(MainActivity.this));
MyAdapter myAdapter1 = new MyAdapter(MainActivity.this, data, 1);
recycler_view.setAdapter(myAdapter1);
}
});
ha.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
haun.setVisibility(View.VISIBLE);
ha.setVisibility(View.GONE);
recycler_view.setLayoutManager(new GridLayoutManager(MainActivity.this,2));
MyAdapter myAdapter1 = new MyAdapter(MainActivity.this, data, 2);
recycler_view.setAdapter(myAdapter1);
}
});
adapter中加载布局的判断
private int i;
public MyAdapter(Context context, List<NewBean.ResultBean.NearbyCinemaListBean> list, int i) {
this.context = context;
this.list = list;
this.i=i;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
if (i==1){
LayoutInflater from = LayoutInflater.from(context);
View view = from.inflate(R.layout.item_layout, parent, false);
return new ViewHolder(view);
}else{
LayoutInflater from = LayoutInflater.from(context);
View view = from.inflate(R.layout.item_two_layout, parent, false);
return new ViewHolder(view);
}
}