小编She*_*tah的帖子

iPhone 3.5英寸屏幕 - 4英寸屏幕:

我知道你可以使用if语句选择ipad或iphone UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad.但我想知道你是否可以为iPhone 3.5英寸屏幕和iPhone 4英寸屏幕做同样的事情.我有一款最初设计用于iPhone 4英寸屏幕的游戏,但是自动布局已用于修复两个设备之间的错误,我需要改变的一件事就是当

if (ball.center.y > 600) {
    RandomPosition = arc4random() %248;
    RandomPosition = RandomPosition + 36;
    ball.center = CGPointMake(RandomPosition, -22);
}
Run Code Online (Sandbox Code Playgroud)

因为它最初是在4英寸屏幕上设计的,所以游戏设置为当它大于600像素时将球重置到屏幕顶部,这正好在iphone 4英寸屏幕下方.它仍能正常工作,3.5英寸屏幕底部和位置重置之间只有一点延迟.无论如何我可以设置一个if语句UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiom(iphone4???)来设置一个新的ball.center.y> 300或者什么?

iphone objective-c ios

8
推荐指数
3
解决办法
4881
查看次数

是否可以在精灵套装游戏中拥有Twitter/Facebook分享按钮?

我完全迷失了,我发现的所有教程都是针对带有Storyboard的iOS 6应用程序.我的问题是你是否可以在sprite-kit游戏中拥有推特或Facebook共享功能?如果是这样,添加它的最佳方法是什么?我读过的很多教程都使用了viewcontrollers,但sprite-kit使用了场景,所以我有点困惑.

谢谢.

twitter facebook objective-c ios sprite-kit

2
推荐指数
1
解决办法
1660
查看次数

有没有办法检查SKSpriteNode是否已从父项中删除?

我正在尝试检查这个SKSpriteNode是否已从屏幕中移除以实现一段代码(如果有)但我似乎无法弄明白.

我的代码;

if (player.position.y > self.frame.size.height) {
    NSLog(@"out of frame");
    [self runAction:[SKAction sequence:@[
                                         [SKAction waitForDuration:0.5],
                                         [SKAction runBlock:^{

        levelMenu *mainMenu = [[levelMenu alloc] initWithSize:self.size];
        [self.view presentScene:mainMenu transition:[SKTransition fadeWithDuration:0.6]];

    }],
                                         ]]];
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

有什么我可以做的来测试从父母那里删除它的时间.即" If (player hasLeftScene)(player hasBeenRemovedFromParent)"之类的东西?

我也试过测试播放器.position.y> 568(4英寸显示器),但它也不起作用.

objective-c ios sprite-kit

1
推荐指数
1
解决办法
1312
查看次数

是否有必要创建应用程序的视网膜版本?

我正在创建一个iOS游戏,我认为我已经完成,直到我在iPad Retina模拟器上测试它,并且它极其滞后.这是一个模拟器故障,还是它在Retina iPad上实际上不起作用?我试着查看是否有必要,但找不到确切的答案.

xcode ipad ios retina-display

0
推荐指数
1
解决办法
67
查看次数