import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView; import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List; /**
* Created by lenovo on 2017/12/2.
*/ class MyAdapter extends BaseAdapter {
private List<Result.NewslistBean>list;
private Context context; public MyAdapter(List<Result.NewslistBean> list, Context context) {
this.list = list;
this.context = context;
} @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) { view = View.inflate(context, R.layout.item, null);
TextView textview = (TextView) view.findViewById(R.id.title);
TextView text2 = (TextView) view.findViewById(R.id.text2);
ImageView imageView =(ImageView) view.findViewById(R.id.img); textview.setText(list.get(i).getTitle());
text2.setText(list.get(i).getCtime());
new MyTask(imageView).execute(list.get(i).getPicUrl()); return view;
}
class MyTask extends AsyncTask<String,Void,Bitmap> {
private ImageView img; public MyTask(ImageView img) {
this.img = img;
} @Override
protected Bitmap doInBackground(String... strings) {
Bitmap bitmap = null;
StringBuilder builder = new StringBuilder();
try {
URL url = new URL(strings[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
if (connection.getResponseCode() ==200){
InputStream inputStream = connection.getInputStream();
bitmap = BitmapFactory.decodeStream(inputStream);
} } catch (Exception e) {
e.printStackTrace();
} return bitmap;
} @Override
protected void onPostExecute(Bitmap s) { img.setImageBitmap(s);
}
}
}

listviewMyAdapter的更多相关文章

随机推荐

  1. (转) Redis学习教程--基本命令

    原文出自:http://www.cnblogs.com/woshimrf/p/5198361.html 目录 全局操作:1.redis是key-value存储的,放在内存中,并在磁盘持久化的数据结构存 ...

  2. Spring bean 生命周期验证

    一.从源码注释看bean生命周期 从JDK源码上看,BeanFactory实现类需要支持Bean的完整生命周期,完整的初始化方法及其标准顺序(格式:接口 方法)为: 1.BeanNameAware s ...

  3. Mybatis基本用法--中

    Mybatis基本用法--中 第四部分 动态 SQL 动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似.MyBatis 采用功能强大的基于 OGNL 的表达式来消除其他元素 ...

  4. SQL基本查询_单表查询(实验二)

    SQL基本查询_单表查询(实验二) 查询目标表结构及数据 emp empno ename job hiedate sal comn deptno 1007 马明 内勤 1992-6-12 4000 2 ...

  5. Vue源码后记-其余内置指令(3)

    其实吧,写这些后记我才真正了解到vue源码的精髓,之前的跑源码跟闹着玩一样. go! 之前将AST转换成了render函数,跳出来后,由于仍是字符串,所以调用了makeFunction将其转换成了真正 ...

  6. Strtus2框架笔记

    Struts2以WebWork优秀的设计思想为核心,吸收了 Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web 应用程序框架. Struts2引入了几个新的框架特性:从逻辑中分 ...

  7. json格式转化成map

    public static Map<String, Object> parseJSON2Map(String jsonStr) { Map<String, Object> ma ...

  8. 扩展 lua require 的行为

    扩展 lua require 的行为 来源 https://blog.codingnow.com/2015/10/lua_require_env.html 今天同事提了个需求,他希望可以给部分 lua ...

  9. Connect the Cities(prim)用prim都可能超时,交了20几发卡时过的

    Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...

  10. 0_Simple__inlinePTX + 0_Simple__inlinePTX_nvrtc

    在核函数代码中加入并行线程执行(Parallel Thread eXecution,PTX),通过汇编指令获取得有关线程束的信息.并且在静态代码和运行时编译两种条件下使用. ▶ 源代码:静态使用 #i ...