在 Lion 及以下版本中,您可以使用 Interface Builder 打开 CALayers,然后将过滤器应用于按钮、标签、视图等。然而,在 10.8 中,这些 UI 元素根本不会呈现到屏幕上。在我的测试中,以编程方式设置 CALayer 的 contentFilters 也会使其“不可见”。
我做了一个简单的测试项目来显示这个错误:
https://dl.dropbox.com/u/12790096/ContentFilterTest.zip
在 Lion 上,测试应用程序如下所示:
在 Mountain Lion 上,测试应用程序如下所示:
作为参考,这是在 ML 的 GM 构建上运行的,由 Xcode 4.4 GM 种子构建。