Core animation 具有自定义视图的核心动画

Core animation 具有自定义视图的核心动画,core-animation,core-graphics,Core Animation,Core Graphics,我使用以下drawRect:方法获得了一个视图子类: - (void)drawRect:(CGRect)rect { [myBackgroundImage drawInRect:rect]; ... // more, complex drawing such as strings, lines, etc. } 我想将背景图像转换为另一个背景图像,而背景图像上方绘制的视图的其余部分保持不变。我该怎么做?我是否需要一个额外的CALayer?看起来您可能会使用多个层:一个用于每个

我使用以下
drawRect:
方法获得了一个视图子类:

- (void)drawRect:(CGRect)rect {

    [myBackgroundImage drawInRect:rect];

    ... // more, complex drawing such as strings, lines, etc.
}

我想将背景图像转换为另一个背景图像,而背景图像上方绘制的视图的其余部分保持不变。我该怎么做?我是否需要一个额外的
CALayer

看起来您可能会使用多个层:一个用于每个背景,另一个用于前景中的其余部分。因此,您可以分别在每个层上应用动画和变换。这是我在Flex和Sprites中成功使用的一个解决方案:使用分层的分离图形对象组织显示列表,移动/旋转/淡入以及应用于其中任何一个对象的任何内容

作为一项设计原则,它应该适用于包括iOS在内的所有图形环境

需要考虑的一件事是:应用于子层的超层的变换会同时影响所有子层