两个adapter
public class ShopListAdapter extends RecyclerView.Adapter<ShopListAdapter.MyHolder> { private List<ShopBean.DataBean> list=new ArrayList<>(); private Context context; public ShopListAdapter(Context context) { this.context=context; } @NonNull @Override public ShopListAdapter.MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { View view=View.inflate(context,R.layout.shop_list_item,null); MyHolder myHolder=new MyHolder(view); return myHolder; } @Override public void onBindViewHolder(@NonNull ShopListAdapter.MyHolder myHolder, int i) { createRecyclerAdapter(myHolder.mRecyclerView,list.get(i).getList()); } /// 穿件瀑布流 private void createRecyclerAdapter(RecyclerView mRecyclerView, List<ShopBean.DataBean.ListBean> list) { ShopListItemAdapter shopListItemAdapter=new ShopListItemAdapter(context,list); StaggeredGridLayoutManager staggeredGridLayoutManager= new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.VERTICAL); mRecyclerView.setLayoutManager(staggeredGridLayoutManager); mRecyclerView.setAdapter(shopListItemAdapter); } @Override public int getItemCount() { return list.size(); } public void setList(List<ShopBean.DataBean> list) { this.list = list; notifyDataSetChanged(); } public class MyHolder extends RecyclerView.ViewHolder { RecyclerView mRecyclerView; TextView mTitle; public MyHolder(@NonNull View itemView) { super(itemView); mTitle=(TextView) itemView.findViewById(R.id.shop_title); mRecyclerView= (RecyclerView)itemView.findViewById(R.id.recyclerview); } } } ******************************
public class ShopListItemAdapter extends RecyclerView.Adapter<ShopListItemAdapter.MyHolder> { private List<ShopBean.DataBean.ListBean> list=new ArrayList<>(); private Context context; public ShopListItemAdapter(Context context, List<ShopBean.DataBean.ListBean> list) { this.context=context; this.list=list; } @NonNull @Override public ShopListItemAdapter.MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { View view=View.inflate(context,R.layout.shop_list_item_child,null); MyHolder myHolder=new MyHolder(view); return myHolder; } @Override public void onBindViewHolder(@NonNull ShopListItemAdapter.MyHolder myHolder, int i) { myHolder.shopTitle.setText(list.get(i).getTitle()); String images= list.get(i).getImages(); String[] imageUrl=images.split("\\|"); Glide.with(context) .load(imageUrl[0]) .into(myHolder.shopImage); } @Override public int getItemCount() { return list.size(); } public class MyHolder extends RecyclerView.ViewHolder { TextView shopTitle; ImageView shopImage; public MyHolder(@NonNull View itemView) { super(itemView); shopImage=(ImageView)itemView.findViewById(R.id.shop_image); shopTitle=(TextView)itemView.findViewById(R.id.shop_title); } } }
**************************************请求数据 public class ShowActitcyPressenter extends AppDelegate { private String url="http://www.zhaoapi.cn/product/getCarts?uid=71"; private RecyclerView mRecyclerView; private ShopListAdapter mShopListAdapter; @Override public int getLayoutId() { return R.layout.activity_show; } @Override public void initData() { mRecyclerView= get(R.id.recyclerview); mShopListAdapter=new ShopListAdapter(context); LinearLayoutManager linearLayoutManager=new LinearLayoutManager(context); linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); mRecyclerView.setLayoutManager(linearLayoutManager); mRecyclerView.setAdapter(mShopListAdapter); doHttp(); } ///请求数据 private void doHttp() { OkHttpClient client=new OkHttpClient(); Request request=new Request.Builder() .url(url) .build(); client.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { Message message=Message.obtain(); message.obj=response.body().string(); handler.sendMessage(message); } }); } private Context context; @Override public void getContext(Context context) { this.context=context; } Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); String data= (String) msg.obj; ShopBean bean=new Gson().fromJson(data,ShopBean.class); mShopListAdapter.setList(bean.getData()); } }; }