我正在尝试制作小型的iOs游戏。用户将看到一个大于设备屏幕尺寸的场景。我相信处理这个问题的正确方法是创建场景并将其放置在滚动视图中,以便用户可以滚动查看整个场景(甚至可以滚动查看以查看更多详细信息)。不过,我一直不成功,在这..这是代码:SpriteKit和UIScrollView和HUD
- (void)viewWillLayoutSubviews
{
// Configure the view.
SKView * skView = (SKView *)self.view;
if (!skView.scene) {
skView.showsFPS = YES;
skView.showsNodeCount = YES;
// Create and configure the scene.
// the size will eventually come from the levels file
SKScene * scene = [[PSMainGameScene alloc] initWithSize:skView.bounds.size andLevel:0];
scene.scaleMode = SKSceneScaleModeAspectFill;
// TODO Add ambiental music
// Present the scene.
[skView presentScene:scene];
}
}
这似乎增加了现场,我能够滚动,但现场没有精灵,甚至你的skview应该借鉴他们(在角落,滚动后,我能够看到帧速率11fps(为什么这么小),和0 sprites)时,添加一个滚动视图的精灵是可见的)。
我还想添加一个HUD:无论用户在哪里滚动/放大,都会将鼠标悬停在同一个地方......我看过一个没有滚动视图的例子,其中thouchesDidMove用于滚动SKView ,我不认为这是要走的路... 有谁知道最好的方法来完成这件事?或者为什么我的代码不工作? 感谢
仔细看看你的代码。你正在添加你的scrollview到什么? –
scrollView在界面生成器中添加到主视图中。 self.designView(游戏场景)也在IB里面添加scrollView ... – user1028028