当我使用视图是层后端并且使用layerUsesCoreImageFilters = YES时,我第一次使用过滤器时,视图会重新初始化'。它很丑陋。 我在子视图上使用模糊滤镜,但它会导致整个视图变为空白并重新出现。 我目前在小牛队(10.9.4) 无论如何有一种标准的方法来强制在app启动时初始化?
答案 0 :(得分:0)
我能够通过在awakeFromNib中显示每个顶级视图之前的某些顶级视图上设置layerUsesCoreImageFilters来解决这个问题。这导致后续调用其他视图上的setLayerUsesCoreImageFilters正常工作,没有任何绘图问题或闪烁视图。
awakeFromNib中的类似内容:
NSArray *subviews = self.mainView.subviews;
for (NSView *subview in subviews)
{
if ([subview respondsToSelector:@selector(setLayerUsesCoreImageFilters:)])
{
if (!subview.layerUsesCoreImageFilters)
{
[subview setLayerUsesCoreImageFilters:YES];
}
}
}