奇怪的UIView渲染问题

时间:2013-11-16 08:25:28

标签: ios objective-c ios7

我正面临一个非常奇怪的问题与UIView(如附带的屏幕截图所示)。

基本上有一个带有backgroundColor的UIView,其alpha值为0.9(深蓝色区域)。在该视图中有一些文本,另一个是UIView(圆圈)。我有一个NSTimer每秒运行一次以倒数中间数(16),但由于某种原因,在大约3秒后,深蓝色区域变为100%透明(仅在某些区域,例如浅蓝色带点,和“记录”部分)并在完全不同的视图中显示UI元素。如果我删除backgroundColor上的alpha透明度,一切都会继续正确呈现,并且不会发生此问题。

有什么建议吗?我试图强制它重绘UIView,尝试添加另一个UIView并设置它的背景。

enter image description here

编辑:它也发生在我没有编写的第三方库(警报窗口)中。 enter image description here

1 个答案:

答案 0 :(得分:1)

在您的计时器处理方法中添加一个断言,以确保您在处理UI时处于主线程上(请参阅NSThread)。

另外,为什么要在关键窗口而不是根视图中添加视图?系统在Z平面上移动窗口。