菜鸟教程小白 发表于 2022-12-12 18:32:42

ios - TouchesBegan 未在呈现的 SKScene 上触发


                                            <p><p>我有一个 SKScene,我在其中展示了另一个场景。下面是演示代码:</p>

<pre><code> initWithSize:self.size] transition:];
</code></pre>

<p>这是我丢失场景的初始化代码:</p>

<pre><code>-(id)initWithSize:(CGSize)size {
    if (self = ) {

// code omitted
    }
    return self;
}
</code></pre>

<p>问题是 LoseScene 中的这个方法永远不会被调用:</p>

<pre><code>-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>看起来你让它工作了,但如果其他人遇到这个问题,我想出了什么会导致奇怪的行为。如果你碰巧调用 presentScene 太多次,就会出现很多问题。如果 presentScene 在 update 方法中,就会发生这种情况。</p>

<pre><code>- (void)update:(NSTimeInterval)currentTime {
    ;
}
</code></pre>

<p> View 不断呈现会导致各种事物中断的场景。确保仅在您要呈现场景时才调用一次,并且一切正常。一个简单的标志就可以了。</p>

<pre><code>- (void)update:(NSTimeInterval)currentTime {
    if(_gameOver) {
      ;
      _gameOver = NO;
    }
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - TouchesBegan 未在呈现的 SKScene 上触发,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/21560036/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/21560036/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - TouchesBegan 未在呈现的 SKScene 上触发