Adapter适配器:
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder>{
private List<Bean.DataBean.CategoryListBean> mlist;
private Context context;
public MyAdapter(List<Bean.DataBean.CategoryListBean> mlist, Context context) {
this.mlist = mlist;
this.context = context;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.item, parent, false);
ViewHolder holder=new ViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
holder.title.setText(mlist.get(position).getTitle());
Glide.with(context).load(mlist.get(position).getPic_url()).into(holder.img);
}
@Override
public int getItemCount() {
return mlist.size();
}
class ViewHolder extends RecyclerView.ViewHolder{
private final ImageView img;
private final TextView title;
public ViewHolder(View itemView) {
super(itemView);
img =(ImageView) itemView.findViewById(R.id.img);
title =(TextView) itemView.findViewById(R.id.text_title);
}
}
}
详情代码:
private RecyclerView recy;
private String mURL = "http://v.juhe.cn/weixin/query?key=a332c6b34264527ac142764eaed9364d&pno=2";
private MyReclerAdapter myReclerAdapter;
private List<MyBean.ResultBean.ListBean> mlist = new ArrayList<>();
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
String obj = (String) msg.obj;
Gson gson = new Gson();
MyBean myBean = gson.fromJson(obj, MyBean.class);
mlist = myBean.getResult().getList();
myReclerAdapter = new MyReclerAdapter(mlist, TwoActivity.this);
recy.setAdapter(myReclerAdapter);
myReclerAdapter.setOnItemClickLitener(new MyReclerAdapter.OnItemClickListener() {
@Override
public void onItemClick(int pos) {
Intent intent = new Intent(TwoActivity.this, ThreeActivity.class);
intent.putExtra("img", mlist.get(pos).getFirstImg());
intent.putExtra("title", mlist.get(pos).getTitle());
startActivity(intent);
}
});
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
initView();
initData();
}
private void initData() {
OkHttpClient okHttpClient = new OkHttpClient();
Request request = new Request.Builder().url(mURL).build();
okHttpClient.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 = new Message();
message.obj = response.body().string();
handler.sendMessage(message);
}
});
}
private void initView() {
recy = (RecyclerView) findViewById(R.id.recy);
LinearLayoutManager manager = new LinearLayoutManager(TwoActivity.this, LinearLayoutManager.VERTICAL, false);
recy.setLayoutManager(manager);
}