11

从 iOS 7 开始,我注意到我的 UIAlertViews 显示有一种绘图延迟 - 发生的情况是屏幕变暗并且 UIAlertView 的文本在警报视图的实际框架出现之前出现在屏幕上仅一瞬间。

我发现问题是由于我的应用程序 plist 文件中的“使用边缘抗锯齿渲染”标志设置为 YES 造成的。关闭它可以解决问题(但是我在任何旋转视图上都有难看的锯齿,这是我首先使用该标志来解决的问题)。

有谁知道我怎么能有我的蛋糕也吃它?即具有边缘抗锯齿以及平滑的 UIAlertViews。

编辑:在高层次上,似乎能够即时切换“UIViewEdgeAntialiasing”就可以了。或者,如果有一种方法可以直接使用抗锯齿旋转 UIView。这些都可能吗?

4

1 回答 1

11

“带有边缘抗锯齿的渲染”非常昂贵!谨慎使用。

改用这个小技巧:

    view.layer.borderWidth = 1;
    view.layer.borderColor = [UIColor clearColor].CGColor;
    view.layer.rasterizationScale = [UIScreen mainScreen].scale;
    view.layer.shouldRasterize = YES;
于 2013-12-12T17:39:29.030 回答