依赖:
compile 'com.google.code.gson:gson:2.8.1' compile 'com.github.bumptech.glide:glide:3.7.0' compile 'com.android.support:recyclerview-v7:21.0.0' compile 'com.squareup.okhttp:okhttp:2.4.0'
MyAdapter:
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder>{ private List<MyBean.DataBean.WallpaperListInfoBean> list = new ArrayList<>(); private Context context; public MyAdapter(List<MyBean.DataBean.WallpaperListInfoBean> list, Context context) { this.list = list; this.context = context; } @Override public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.item,parent,false); return new MyAdapter.ViewHolder(view); } @Override public void onBindViewHolder(MyAdapter.ViewHolder holder, int position) { holder.tv.setText(list.get(position).UserName); Glide.with(context).load(list.get(position).WallPaperMiddle).into(holder.iv); } @Override public int getItemCount() { return list == null ? 0 : list.size(); } public class ViewHolder extends RecyclerView.ViewHolder { private TextView tv; private ImageView iv; public ViewHolder(View itemView) { super(itemView); iv = (ImageView) itemView.findViewById(R.id.item_iv); tv = (TextView) itemView.findViewById(R.id.item_tv); } } } MainActivity.javaprivate RecyclerView recyclerView; private List<MyBean.DataBean.WallpaperListInfoBean> list; private Handler handler = new Handler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); recyclerView = (RecyclerView) findViewById(R.id.recycler); inData(); //瀑布流显示图片 StaggeredGridLayoutManager manger = new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.VERTICAL); recyclerView.setLayoutManager(manger); } private void inData() { OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url("http://bz.budejie.com/?typeid=2&ver=3.4.3&no_cry=1&client=android&c=wallPaper&a=random&bigid=0").build(); Call call = client.newCall(request); call.enqueue(new Callback() { @Override public void onFailure(Request request, IOException e) { } @Override public void onResponse(Response response) throws IOException { if(response.body() != null && response.isSuccessful()){ String result = response.body().string(); MyBean bean = MyBean.objectFromData(result); list = bean.data.WallpaperListInfo; handler.post(new Runnable() { @Override public void run() { recyclerView.setAdapter(new MyAdapter(list,MainActivity.this)); } }); } } }); }recycleview另外两种显示方式: // LinearLayoutManager manager = new LinearLayoutManager(this);//GridLayoutManager glide = new GridLayoutManager(this, 3);