1

我有一个CAEmitterCell

CAEmitterCell * spriteCell = [CAEmitterCell emitterCell];  
spriteCell.contents = (id) [[UIImage imageNamed:@"emitterSprite.png"] CGImage];

我希望精灵是一个动画的 png 序列(左右)而不是单个图像。

我知道的唯一技术使用了UIImageView

   NSMutableArray *animatedImagesArray = [NSMutableArray new];
    imageView = [[UIImageView alloc] initWithFrame:CGRectMake(...)];
    for (int i = 1; i <= 10; i++)
    {[animatedImagesArray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"sequenceNo-%d%@", i, @".png"]]];}
    imageView.animationImages = animatedImagesArray;
    [view addSubview:imageView];

CAEmitterCell.contents似乎不接受UIImageView。有没有办法做到这一点?

4

1 回答 1

2

出于操作系统性能的原因,您尝试执行的操作是不可能的。如果您有简单的转换,如旋转、缩放、色调,您可以在 CAEmitterCell 的属性中编辑这些值。如果您需要更复杂的动画,您将需要使用可以处理 UIImageViews 的自定义发射器。但请注意性能影响。

于 2015-05-02T05:40:34.567 回答