我有一个UIProgressView,用于向用户显示文件下载的进度。下载请求在后台线程中完成,在进度块中,在主线程上调用UIProgressView进度值更新。
它在40%左右工作良好,但随后它挂起,并在100%左右快速显示,自定义警报关闭(这是它应该关闭的)。我试了很多次,但我不能让它顺利地更新为100%。
我还有一个取消按钮,我注意到它对40% - 100%范围内的点击没有反应。所以,不知何故,主线程被阻塞了。因为在0% - 40%范围内,cancel按钮可以完美地工作。我非常确定我不会在下载文件时阻塞主线程,并且UIProgressView更新是在主线程上完成的。
可能的问题是什么?
发布于 2016-05-13 16:28:39
我终于找到原因了。这是因为我在进度块中有一个NSLog调用,它被调用了很多次。
我仍然不明白为什么它会这么做,为什么一直保持在40%左右,但我认为让它投入生产并不是一个好主意。
https://stackoverflow.com/questions/37205012
复制相似问题