如何添加UIView作为SKNode的子项

时间:2016-01-17 22:05:34

标签: ios objective-c uiview sprite-kit sknode

我正在使用Objective-C和Sprite Kit制作游戏,但我遇到了一个问题,我无法通过自己的尝试来解决这个问题,我已经考虑过了在这问你。

我使用CoreAnimator创建了一个动画,结果以UIView对象的形式给出。我已将对象添加为GameViewController中我主视图的子视图,并且它会正确显示和动画显示。但现在我想把它与另一个对象联系起来。

以前,当我刚刚使用占位符动画时,我将其用作常规SKSpriteNode,因此如果对象A是SKNode,那么我们只需使用[objectA addChild:objectB]即可将它们链接在一起。这工作得很好,我想保持这种方式。但是现在因为objectB不再是一个节点,而是一个UIView我不能再使用addChild了。

您能否知道或可以考虑解决此问题的任何方法?

GameScene:

父:

_objectA = [[SKNode alloc] init];
_objectA.position = CGPointMake([[UIScreen mainScreen] bounds].size.width * -0.35,
[[UIScreen mainScreen] bounds].size.height * -0.26);
_objectA.zPosition = 0.9;
[_worldContainer addChild:_objectA];

子:

_objectB = [self.view viewWithTag:123];
[_objectB addTopAnimation];

GameViewController:

_objectB = [[TestAnimView alloc] init];
_objectB.tag = 123;
_objectB.transform = CGAffineTransformMakeScale(0.6, 0.6);
_objectB.layer.anchorPoint = CGPointMake(0.5, 0);
_objectB.layer.position = CGPointMake([[UIScreen mainScreen] bounds].size.width * 0.139,[[UIScreen mainScreen] bounds].size.height * 0.49);
[self.view addSubview:_objectB];

0 个答案:

没有答案