Bitmap bm = BitmapFactory.decodeFile(path[j]); imageView.setImageBitmap(bm); try { Thread.currentThread().sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); }
Bitmap bm = BitmapFactory.decodeFile(path[j]); imageView.setImageBitmap(bm); imageView.postDelay(new Runnable(){ public void run() { //这里加上你要做的事情 Toast.makeText().... } },5000); 这就是你要的结果。 try { Thread.currentThread().sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); }
[quote=引用 5 楼 milo1224 的回复:] [quote=引用 4 楼 YKDSea 的回复:] [quote=引用 3 楼 milo1224 的回复:] [quote=引用 1 楼 YKDSea 的回复:] 不是这样搞的,你要理解下draw的动作不是说你操作了某个元素后,就立刻去draw了,操作完毕,只是发送了一个message给activity去draw,你这样直接sleep就是阻塞了draw的message的执行,所以最终就是看到5s延迟后才能看到图片。 要达到你的效果,把sleep那边改成用handler发送一个延迟5s的message,在message的处理中去把imageview hide掉。
[quote=引用 3 楼 milo1224 的回复:] [quote=引用 1 楼 YKDSea 的回复:] 不是这样搞的,你要理解下draw的动作不是说你操作了某个元素后,就立刻去draw了,操作完毕,只是发送了一个message给activity去draw,你这样直接sleep就是阻塞了draw的message的执行,所以最终就是看到5s延迟后才能看到图片。 要达到你的效果,把sleep那边改成用handler发送一个延迟5s的message,在message的处理中去把imageview hide掉。
不是这样搞的,你要理解下draw的动作不是说你操作了某个元素后,就立刻去draw了,操作完毕,只是发送了一个message给activity去draw,你这样直接sleep就是阻塞了draw的message的执行,所以最终就是看到5s延迟后才能看到图片。 要达到你的效果,把sleep那边改成用handler发送一个延迟5s的message,在message的处理中去把imageview hide掉。
[quote=引用 4 楼 YKDSea 的回复:] [quote=引用 3 楼 milo1224 的回复:] [quote=引用 1 楼 YKDSea 的回复:] 不是这样搞的,你要理解下draw的动作不是说你操作了某个元素后,就立刻去draw了,操作完毕,只是发送了一个message给activity去draw,你这样直接sleep就是阻塞了draw的message的执行,所以最终就是看到5s延迟后才能看到图片。 要达到你的效果,把sleep那边改成用handler发送一个延迟5s的message,在message的处理中去把imageview hide掉。
[quote=引用 1 楼 YKDSea 的回复:] 不是这样搞的,你要理解下draw的动作不是说你操作了某个元素后,就立刻去draw了,操作完毕,只是发送了一个message给activity去draw,你这样直接sleep就是阻塞了draw的message的执行,所以最终就是看到5s延迟后才能看到图片。 要达到你的效果,把sleep那边改成用handler发送一个延迟5s的message,在message的处理中去把imageview hide掉。
80,471
社区成员
91,383
社区内容
加载中
试试用AI创作助手写篇文章吧