ListView展示 网络请求的数据, 并LoaderImage请求网络图片
来源:互联网 发布:经济学数据分析 编辑:程序博客网 时间:2024/06/11 04:54
/** * 网络获取数据 并解析+解析图片地址 */public class MainActivity extends AppCompatActivity { private ListView lv; List<Da.NewslistBean> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 找控件 lv = (ListView) findViewById(R.id.lv); list = new ArrayList<Da.NewslistBean>(); // 异步任务 new AsyncTask<String,Integer,String>(){ @Override protected String doInBackground(String... strings) { // 初始化数据 getData(); // ImageLoader ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(MainActivity.this); ImageLoader.getInstance().init(configuration); return null; } @Override protected void onPostExecute(String s) { // 设置适配器 MyAdapter adapter = new MyAdapter(); lv.setAdapter(adapter); super.onPostExecute(s); } }.execute(); } private void getData() { try { URL url = new URL("https://api.tianapi.com/wxnew/?key=8d6e3228d25298f13af4fc40ce6c9679&num=10"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); int code = conn.getResponseCode(); if(code == 200){ // 解析数据 Gson gson = new Gson(); Da da = gson.fromJson(new InputStreamReader(conn.getInputStream(),"UTF-8"),Da.class); list = da.getNewslist(); } } catch (Exception e) { e.printStackTrace(); } } class MyAdapter extends BaseAdapter{ @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 View getView(int i, View view, ViewGroup viewGroup) { ViewHolder holder; if(view == null){ holder = new ViewHolder(); view = View.inflate(MainActivity.this,R.layout.item,null); holder.item_ctime = view.findViewById(R.id.item_ctime); holder.item_title = view.findViewById(R.id.item_title); holder.item_description = view.findViewById(R.id.item_description); holder.item_url = view.findViewById(R.id.item_url); holder.iv = view.findViewById(R.id.iv); view.setTag(holder); }else{ holder = (ViewHolder) view.getTag(); } String path = list.get(i).getPicUrl();// holder.iv.setImageBitmap(); ImageLoader.getInstance().displayImage(path,holder.iv); holder.item_ctime.setText(list.get(i).getCtime()); holder.item_title.setText(list.get(i).getTitle()); holder.item_description.setText(list.get(i).getDescription()); holder.item_url.setText(list.get(i).getUrl()); return view; } } class ViewHolder{ TextView item_ctime,item_title,item_description,item_url; ImageView iv; } }
阅读全文
0 0
- ListView展示 网络请求的数据, 并LoaderImage请求网络图片
- OkHttp请求网络数据,并listview展示
- listview网络请求数据并实现多条目展示
- ListView多条目展示 请求网络数据 和图片
- 网络请求并展示到ListView上
- Android_请求网络数据展示到Listview
- 网络请求+ListView展示数据+数据库
- 文章标题 listview网络请求数据展示
- 网络请求展示到listview
- Retrofit 请求网络数据 并适配到 ListView
- Android studio请求网络数据ListView异步加载展示文字条目 ImageLoadler加载图片
- 网络数据请求XListView展示
- 网络请求+XListView展示数据
- 使用MVP+Retrofit+RxJava 图片加载使用Fresco 做网络请求并展示数据
- Retrofit网络请求+Recyclerview展示数据+Fresco显示图片
- Retrofit网络请求+Recyclerview展示数据+Fresco显示图片
- ListView请求网络数据的使用
- xListView主页面请求网络数据展示到listView的三个步骤
- C语言利用管道获取CMD命令结果
- RxJava二线程控制
- (7) ODI环境搭建_初始化ODI配置
- Android——蓝牙利用RSSI进行距离测算
- GCC编译器一些参数区别(-I -l -L)
- ListView展示 网络请求的数据, 并LoaderImage请求网络图片
- C#时间转换成ISO8601标准
- python练习(七)
- Java项目部署 : 将Java项目打包成jar包,并指定指定的main方法执行
- Android的Message机制(简单小结)
- MySQL 5.7 mysqlpump 备份工具
- hdu6011增量法
- dp基础-2 N
- hosts文件无法修改无法保存