ios - 使用导航 Controller 作为开始屏幕 ios
<p><p>我已经到了需要为使用 sprite kit 制作的游戏制作开始屏幕的地步。我无法让它与我阅读和观看的任何代码和教程一起显示。</p>
<p>我想使用导航 Controller / ViewController 从开始屏幕开始并将其链接到我的应用,但我不知道如何将我的游戏代码链接到 ViewController 。</p>
<p>使用导航 Controller ,我如何将它作为@IBAction 声明拖到我的游戏代码中?谢谢。</p>
<p>用当前代码编辑:</p>
<p>ViewController.m:</p>
<pre><code>@implementation ViewController
- (void)viewDidLoad
{
;
SKView * skView = (SKView *)self.view;
skView.showsFPS = YES;
skView.showsNodeCount = YES;
SKScene * scene = ;
scene.scaleMode = SKSceneScaleModeAspectFill;
scene.viewController = self;
;
}
</code></pre>
<p>MyScene.h:</p>
<pre><code>@interface MyScene : SKScene <SKPhysicsContactDelegate>
@property (strong, nonatomic) UIViewController *viewController;
@end
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>此答案基于 <a href="https://stackoverflow.com/a/27056327/2043580" rel="noreferrer noopener nofollow">here</a> ,但已被翻译成 Objective-C。</p>
<p>您面临的问题是 SKScene 不能直接访问它的 viewController,而只能访问它所在的 View 。您需要手动创建指向它的指针。这可以通过为 SKScene 创建一个属性来完成:</p>
<pre><code>@interface GameScene : SKScene
@property (strong, nonatomic) UIViewController *viewController;
@end
</code></pre>
<p>然后,在 viewController 类中,就在 <code>;</code></p> 之前
<pre><code>scene.viewController = self;
</code></pre>
<p>现在,您可以直接访问 viewController。只需在这个 viewController 上调用 segue:</p>
<pre><code>-(void)goToHomeScreen {
;
}
</code></pre>
<p>您可以以类似的方式执行其他 navigationController 操作。</p></p>
<p style="font-size: 20px;">关于ios - 使用导航 Controller 作为开始屏幕 ios,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/27096991/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/27096991/
</a>
</p>
页:
[1]