我正在尝试在Sprite Kit中按下暂停按钮时创建暂停菜单。这是我通过创建UIImageView。问题是没有显示UIImageView。我怎样才能做到这一点?
-(void)didMoveToView:(SKView *)view
{
UIButton *pauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
[pauseButton setImage:[UIImage imageNamed:@"pause"] forState:UIControlStateNormal];
[pauseButton addTarget:self action:@selector(pausedMenu:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:pauseButton];
}
-(void)pausedMenu:(SKView *)view
{
SKSpriteNode *menu = [SKSpriteNode spriteNodeWithImageNamed:@"pausemenu"];
//menu size is already image size (by default), no need to set it
menu.position = CGPointMake((self.size.width - menu.size.width) * 0.5,
(self.size.height - menu.size.height) * 0.5);
[self addChild:menu];
self.scene.paused = YES;
self.scene.view.paused = YES;
}
答案 0 :(得分:4)
仅使用SpriteKit,为什么要使用UIImages?
SKSpriteNode *menu = [SKSpriteNode spriteNodeWithImageNamed:@"pausemenu"];
//menu size is already image size (by default), no need to set it
menu.position = CGPointMake((self.size.width - menu.size.width) * 0.5,
(self.size.height - menu.size.height) * 0.5);
[self addChild:menu];
self.scene.paused = YES;
self.scene.view.paused = YES;
答案 1 :(得分:1)
如果你真的想要这样做,你可以调用你所有的UIImageView内容,
-(void) didMoveToView:(SKView *)view {}
然后,当您想要调用pausedMenu项目时,您必须创建一个新场景,以便didMoveToView:
被触发。特定于暂停菜单的场景。