菜鸟教程小白 发表于 2022-12-13 07:12:29

ios - 如何在 SKScene 转换之间设置微调器?


                                            <p><p>我有一个非常重量级的场景,加载大约需要 5 秒。<br/>
我希望在等待加载时出现一些带有微调器的加载屏幕 - 什么是优雅的解决方案?</p>

<p>我应该在加载场景时制作中间场景并在其上显示微调器吗?</p>

<p>我可以在后台线程中分配和 initWithSize 场景吗?</p>

<p>这是我现在的做法:</p>

<pre><code>MyScene *newScene = [ initWithSize:self.size];
SKTransition *transition = ;
;
</code></pre>

<p>但是,当我按下按钮时,游戏会卡住 5 秒钟,并且不会向玩家提供正在发生的事情的任何反馈。</p>

<p>将其标记为 coco2d,因为它具有非常相似的 API 和问题。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>不要在后台线程上做这样的事情。你可以做的是首先显示你的微调器,然后 <code>dispatch_async</code> 实际的转换:</p>

<pre><code>// Write code for showing your spinner

dispatch_async(dispatch_get_main_queue(), ^{
    MyScene *newScene = [ initWithSize:self.size];
    SKTransition *transition = ;
    ;
});
</code></pre>

<p>这将显示您的微调器,并在下一个运行循环中执行转换。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何在 SKScene 转换之间设置微调器?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/22618087/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/22618087/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何在 SKScene 转换之间设置微调器?