服务器之家

服务器之家 > 正文

java异步上传图片示例

时间:2019-11-06 11:20     来源/作者:java教程网

代码如下:


final File imageFile = new File(getCacheDir().getPath() + "/img/" + p.image); 
image.setVisibility(View.GONE); 
view.findViewById(R.id.imageLoading).setVisibility(View.VISIBLE); 
(new AsyncTask<Void, Void, Bitmap>() { 
    @Override 
    protected Bitmap doInBackground(Void... params) { 
        try { 
            Bitmap image; 
            if (!imageFile.exists() || imageFile.length() == 0) { 
                image = BitmapFactory.decodeStream(new URL( 
                        "http://example.com/images/" 
                                + p.image).openStream()); 
                image.compress(Bitmap.CompressFormat.JPEG, 85, 
                        new FileOutputStream(imageFile)); 
                image.recycle(); 
            } 
            image = BitmapFactory.decodeFile(imageFile.getPath(), 
                bitmapOptions); 
            return image; 
        } catch (MalformedURLException ex) { 
            // TODO Auto-generated catch block 
            ex.printStackTrace(); 
            return null; 
        } catch (IOException ex) { 
            // TODO Auto-generated catch block 
            ex.printStackTrace(); 
            return null; 
        } 
    } 

    @Override 
    protected void onPostExecute(Bitmap image) { 
        if (view.getTag() != p) // The view was recycled. 
            return; 
            view.findViewById(R.id.imageLoading).setVisibility( 
                View.GONE); 
        view.findViewById(R.id.image) 
                .setVisibility(View.VISIBLE); 
        ((ImageView) view.findViewById(R.id.image)) 
                .setImageBitmap(image); 
    } 
}).execute();

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
返回顶部