我正在尝试将带有简单动画的SKScene添加到UICollectionCell。
我在集合视图单元格的.xib文件中设置了SKView。
如果我运行并滚动,它会按预期工作。但是,如果我更改为另一个视图控制器(在标签栏控制器中)也使用这些类型的单元格并开始滚动,它将被卡住。
以下是我添加SKScene的方法:
@interface MAPostCollectionViewCell ()
@property (strong, nonatomic) IBOutlet SKView *viewAnimation;
@property (strong, nonatomic) MAHeartAnimation *heartScene;
@end
@implementation MAPostCollectionViewCell
-(void)layoutSubviews{
[super layoutSubviews];
self.heartScene = [MAHeartAnimation sceneWithSize:self.viewAnimation.bounds.size];
self.heartScene.scaleMode = SKSceneScaleModeAspectFill;
[self.viewAnimation presentScene:self.heartScene];
}
@end
如果用户点击按钮,我只触发动画。
但是对于这个问题的范围,动画并不重要,因为我没有触摸那个按钮,只是滚动UICollectionView。
答案 0 :(得分:0)
事实证明你不应该这样使用SpriteKit和UIKit。即使它们是模块化框架,但在以这种方式一起使用时它们也不具备性能。我最终通过使用CALayers将UIKit用于我想要的动画。