Android旋转屏幕后,Progressbar进度无法更新。代码如下图。

第40行打印进度其实是更新了的,但是UI就是不更新。... 第40行打印进度其实是更新了的,但是UI就是不更新。 展开
 我来答
百度网友9e6c6be
2016-11-10 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:149
采纳率:100%
帮助的人:38.9万
展开全部
我觉得可是这几个方面的问题:
1,你更新主界面的UI在代码上看是在主线程中,但我一般不这么写,你可以试试让他在外面更新试试,你这个log打印出来跟你这个UI更新不更新没多大关系,只能说明这个循环是在走的。
2. 就是生命周期的问题了。因为你说屏幕旋转了之后,这个是会掉用Activity的生命周期的。
你可以试试看。。。。
追问

我明白了,两个问题:

  1. 旋转后activity重建,姑且把重建前叫做ActivityA,重建后叫做ActivityB, ActivityA开启一个线程A更新barA,重建后其实并没有开启线程(所以根本不会更新bar)

  2. 重建后线程A还在持续执行,其中更新ActivityA的bar,导致ActivityA无法被回收,所以有可能造成内存泄漏。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式