如何摆脱启用核心动画层的警告

时间:2011-10-25 15:24:02

标签: cocoa xcode4 core-animation

我在我正在开发的Cocoa应用程序中对我的子视图的转换进行了一些实验。回滚后,我留下5个警告,说明“不支持的配置:添加子视图转换需要视图或其中一个祖先启用核心动画层”。

我如何摆脱它们?

编辑:澄清一下:我只是玩弄了过渡,看看它们如何运作,然后将它们全部删除。还从菜单中“清理”并重建了我的项目。

4 个答案:

答案 0 :(得分:2)

以下事情对我有用,要摆脱这个警告,

1 - 打开XiB作为源代码,打开XML文件

2 - 遵循以下XML部分,

<!-- <object class="NSDictionary" key="NSViewAnimations">
                        <string key="NS.key.0">subviews</string>
                        <object class="CATransition" key="NS.object.0">
                            <object class="CIRippleTransition" key="filter">
                                <object class="NSCustomResource" key="CI_inputTargetImage">
                                    <string key="NSClassName">CIImage</string>
                                    <string key="NSResourceName">largegears</string>
                                </object>
                                <object class="NSCustomResource" key="CI_inputShadingImage">
                                    <string key="NSClassName">CIImage</string>
                                    <string key="NSResourceName">LogoLg</string>
                                </object>
                                <object class="CIVector" key="CI_inputCenter">
                                    <int key="CICount">2</int>
                                    <string key="CIVector">{{150, 150}, {0, 0}}</string>
                                </object>
                                <object class="CIVector" key="CI_inputExtent">
                                    <int key="CICount">4</int>
                                    <string key="CIVector">{{0, 0}, {300, 300}}</string>
                                </object>
                                <real value="0.0" key="CI_inputTime"/>
                                <real value="100" key="CI_inputWidth"/>
                                <real value="50" key="CI_inputScale"/>
                                <bool key="CIEnabled">YES</bool>
                            </object>
                            <string key="subtype">fromTop</string>
                            <string key="type">fade</string>
                            <object class="NSArray" key="__CACodingContents">
                                <bool key="EncodedWithXMLCoder">YES</bool>
                                <string>filter</string>
                                <string>subtype</string>
                                <string>type</string>
                            </object>
                        </object>
                    </object> -->

Key是搜索CATransition和Commentout,其相应的NSDictionary属性应该注释掉,

但最终,必须如何找到它的添加方式。

答案 1 :(得分:1)

找到它。

显然XCode感到困惑 - 至少这是我的解释。

当您导航到问题导航器时,警告将消失,右键单击警告并选择“打开为源代码”。然后,您将看到XIB的XML表示形式。在我的情况下,我发现了一些对转换的引用,但在关闭它们之后,它们就像警告一样消失了。

答案 2 :(得分:1)

要摆脱此警告,请在视图中打开顶部,然后查看查看效果检查器并查看视图。

Image

答案 3 :(得分:0)

仔细查看视图的顶层。 在我玩过这个层次结构中的一些过渡之后,我也遇到了这个问题。

经过仔细检查后,我注意到在IB的核心动画层中,该视图的顶层仍然是一个活动过滤器。删除那个之后,我能够在没有警告的情况下进行编译。