ImageLoader多张图片&listview多条目加载
来源:互联网 发布:淘宝联盟api免费申请 编辑:程序博客网 时间:2024/05/29 07:38
//MainActivity
package com.bawei.mi;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.widget.ListView;import com.bawei.mi.Adapter.lv_adapter;import com.bawei.mi.Bean.json_bean;import com.bawei.mi.Bean.lv_bean;import com.google.gson.Gson;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private ListView lv; private ArrayList<lv_bean> list = new ArrayList<lv_bean>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件id lv = (ListView) findViewById(R.id.lv); initData();//解析json串 } Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); Gson gson = new Gson(); String str = msg.obj.toString();// json_bean json_bean = gson.fromJson((String) msg.obj, json_bean.class); json_bean json_bean = gson.fromJson(str, json_bean.class); com.bawei.mi.Bean.json_bean.ResultBean result = json_bean.getResult(); List<com.bawei.mi.Bean.json_bean.ResultBean.DataBean> data = result.getData();
//判断是否存在ABC图片 for (int i = 0; i < data.size(); i++) { String thumbnail_pic_s = data.get(i).getThumbnail_pic_s(); String thumbnail_pic_s02 = data.get(i).getThumbnail_pic_s02(); String thumbnail_pic_s03 = data.get(i).getThumbnail_pic_s03(); if (thumbnail_pic_s != null && thumbnail_pic_s02 == null && thumbnail_pic_s03 == null) { list.add(new lv_bean(data.get(i).getTitle(), data.get(i).getThumbnail_pic_s(), 0)); } else if (thumbnail_pic_s != null && thumbnail_pic_s02 != null && thumbnail_pic_s03 == null) { list.add(new lv_bean(data.get(i).getTitle(), data.get(i).getThumbnail_pic_s(), data.get(i).getThumbnail_pic_s02(), 1)); } else if (thumbnail_pic_s != null && thumbnail_pic_s02 != null && thumbnail_pic_s03 != null) { list.add(new lv_bean(data.get(i).getTitle(), data.get(i).getThumbnail_pic_s(), data.get(i).getThumbnail_pic_s02(), data.get(i).getThumbnail_pic_s03(), 2)); } } lv.setAdapter(new lv_adapter(MainActivity.this, list)); Log.e("shipeiqidexiamian", "qwrwjsda"); } }; //解析json串 private void initData() { new Thread() { @Override public void run() { super.run(); try { URL url = new URL("http://v.juhe.cn/toutiao/index?type=top&key=2f092bd9ce76c0257052d6d3c93c11b4"); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); int responseCode = urlConnection.getResponseCode(); if (responseCode == 200) { InputStream inputStream = urlConnection.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); StringBuilder builder = new StringBuilder(); String stringTemp = ""; while ((stringTemp = reader.readLine()) != null) { builder.append(stringTemp); } Message message = new Message(); message.obj = builder.toString(); handler.sendMessage(message); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }.start(); }}
//adapter适配器
package com.bawei.mi.Adapter;import android.content.Context;import android.util.Log;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.TextView;import com.bawei.mi.Bean.lv_bean;import com.bawei.mi.R;import com.nostra13.universalimageloader.core.ImageLoader;import java.util.ArrayList;/** * author:Created by WangZhiQiang on 2017/9/8. */public class lv_adapter extends BaseAdapter { private Context con; private ArrayList<lv_bean> list; public lv_adapter(Context con, ArrayList<lv_bean> list) { this.con = con; this.list = list; } @Override public int getCount() { return list.size(); } @Override public Object getItem(int i) { return list.get(i); } @Override public long getItemId(int i) { return i; } @Override public int getItemViewType(int position) { return list.get(position).getType(); } @Override public int getViewTypeCount() { return 3; } class viewHoder { TextView title; ImageView img1; ImageView img2; ImageView img3; } @Override public View getView(int i, View view, ViewGroup viewGroup) { viewHoder hoder = new viewHoder(); lv_bean bean = list.get(i); int type = bean.getType(); if (type == 0) { if (view == null) { view = View.inflate(con, R.layout.layout_first, null); hoder.title = (TextView) view.findViewById(R.id.title); hoder.img1 = (ImageView) view.findViewById(R.id.img1); view.setTag(hoder); } else { hoder = (viewHoder) view.getTag(); } hoder.title.setText(bean.getTitle()); ImageLoader.getInstance().displayImage(bean.getPic1(), hoder.img1); Log.e("adapteradapter", "111111111"); } else if (type == 1) { if (view == null) { view = View.inflate(con, R.layout.layout_second, null); hoder.title = (TextView) view.findViewById(R.id.title); hoder.img1 = (ImageView) view.findViewById(R.id.img1); hoder.img2 = (ImageView) view.findViewById(R.id.img2); view.setTag(hoder); } else { hoder = (viewHoder) view.getTag(); } hoder.title.setText(bean.getTitle()); ImageLoader.getInstance().displayImage(bean.getPic1(), hoder.img1); ImageLoader.getInstance().displayImage(bean.getPic2(), hoder.img2); Log.e("adapteradapter", "222222222"); } else if (type == 2) { if (view == null) { view = View.inflate(con, R.layout.layout_thrid, null); hoder.title = (TextView) view.findViewById(R.id.title); hoder.img1 = (ImageView) view.findViewById(R.id.img1); hoder.img2 = (ImageView) view.findViewById(R.id.img2); hoder.img3 = (ImageView) view.findViewById(R.id.img3); view.setTag(hoder); } else { hoder = (viewHoder) view.getTag(); } hoder.title.setText(bean.getTitle()); ImageLoader.getInstance().displayImage(bean.getPic1(), hoder.img1); ImageLoader.getInstance().displayImage(bean.getPic2(), hoder.img2); ImageLoader.getInstance().displayImage(bean.getPic3(), hoder.img3); Log.e("adapteradapter", "33333333"); } return view; }}
阅读全文
0 0
- ImageLoader多张图片&listview多条目加载
- ImageLoader+网络请求+ListView多条目加载
- ListView多条目加载和ImageLoader
- ListView多条目+ImageLoader
- ListView多条目加载
- ListView 多条目加载
- listview多条目加载
- ListView多条目加载
- listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- listview多条目加载
- Listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- Ubuntu安装配置串口通讯工具minicom&&cutecom
- HBase PerformanceEvaluation机制分析
- 机器学习笔记-Blending and Bagging
- 中英文姓名及手机号的正则表达式
- QGraphicsProxyWidget 与 QWidget 点滴
- ImageLoader多张图片&listview多条目加载
- Java基础学习之——接口的作用和抽象类的区别
- 操作系统基础
- Visual Studio2008 左侧显示行号
- bzoj2668 [cqoi2012]交换棋子
- RPG难题(找规律,也开看作DP)
- Atitit 理财之道---分期与利率的比较列表 attilax总结
- poj1959 Darts
- [iOS固定宽度后计算UILable高度]