我有一些需要添加光晕的文本。问题是,当添加发光效果时,我的性能会受到影响。
我有几个动画(它们一次只发生一个,没有什么花哨或复杂的)。这些动画就像改变 UIView 的 alpha 和 scale 值。
它们非常光滑!但是,当使用 Quartz Core 向屏幕上的文本添加发光时,其余动画不再那么流畅。
在我父亲的 iPhone 3GS 上,它们工作得很好!然而,在我的 iPhone 4 上,它们变慢了!由于具有 4 倍的像素,文档警告视网膜显示。但我真的需要这种发光效果!
// This work good!
_timerLabel.shadowColor = [UIColor darkGrayColor];
_timerLabel.shadowOffset = CGSizeMake(0.0, 0.5);
_timerLabel.alpha = 1.0;
// This gets me a performance hit
_timerLabel.layer.shadowRadius = 3;
_timerLabel.layer.shadowOpacity = 0.3;
无论如何我可以在不影响性能的情况下做到这一点吗?
编辑
// This does help some! But it's not there yet.. It still has a heavy FPS loss
_timerLabel.layer.shouldRasterize = YES;
谢谢!