为了账号安全,请及时绑定邮箱和手机立即绑定

java线程的疑惑

java线程的疑惑

收到一只叮咚 2019-03-20 17:19:57
@Override        protected void onCreate(Bundle savedInstanceState) {                super.onCreate(savedInstanceState);                setContentView(R.layout.activity_main);                initView();                downloadImg();//这里有一个下载线程                String key = hasKeyForDisk(imageUrl);                try {                        DiskLruCache.Snapshot snapShot = diskLruCache.get(key);                        if (snapShot != null) {                                InputStream is = snapShot.getInputStream(0);                                Bitmap bitmap = BitmapFactory.decodeStream(is);                                imageView.setImageBitmap(bitmap);                        }                } catch (IOException e) {                        e.printStackTrace();                }        }downloadImg();下载一个大图片,我想问问,下面的逻辑会不会等这个线程下载完才执行呢?如果不会,那下面的逻辑需要下载的文件,怎么处理?现在的问题是能下载文件,但是imageView.setImageBitmap(bitmap);不能显示图片....
查看完整描述

2 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

你这个是安卓更新ui的问题。图片可以下载,在下载图片的时候下面的代码会执行,所以还没有等图片下载完你后面的代码已经执行,图片加载不了。可以用handler,或者异步任务,或者把需要更新的view传入进入,或者使用回调。


查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 413 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信