求帮忙啊,实在是搞不懂,都进来看看吧,谢谢!(android)

芮淼一线 发布于 2015/08/20 15:32
阅读 103
收藏 0


public class DownAsyncTask extends AsyncTask<String, String, String> {

private List<Bitmap> listBitmap;
LinkedList<HashMap<String, String>> listJsonDatas;
public DownAsyncTask(LinkedList<HashMap<String, String>> list){
listJsonDatas = list;
listBitmap = new ArrayList<Bitmap>();
}


@Override
protected String doInBackground(String... params) {
for(int i = 0; i<CateStaticDatas.animalJsonDatas.size();i++){
Bitmap bitmap = getHttpBitmap(CateStaticDatas.animalJsonDatas.get(i).get("URL"));
//listBitmap.add(bitmap);
}
return null;
}
@Override
    protected void onPostExecute(String str){

}


    public Bitmap getHttpBitmap(String url){ // 后面 把图片压缩一下
        URL myFileURL;
        Bitmap bitmap=null;
        try{
            myFileURL = new URL(url);
            HttpURLConnection conn=(HttpURLConnection)myFileURL.openConnection();
            conn.setConnectTimeout(7000);
            conn.setDoInput(true);
            conn.setUseCaches(true);
            InputStream is = conn.getInputStream();
            bitmap = BitmapFactory.decodeStream(is);
            is.close();
        }catch(Exception e){
            e.printStackTrace();
        } 
        System.out.println("图片下载成功!.........");
        return bitmap;      
    }


}
代码如上:(主要目的是想通过异步 下载图片,然后把它添加到list中)


       我想把下载的 Bitmap 放到 listBitmap中 可是总是提示 doInBackground()方法运行错误 ,去掉 listBitmap.add() 这一行后它又不会出错了,这是为什么,我怎么也解决不了,求帮忙啊!
加载中
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部