菜鸟教程小白 发表于 2022-12-13 05:17:13

iOS segue 慢 - 即使没有对destinationViewController 进行任何处理


                                            <p><p>我有一个连接到新 ViewController 的按钮。当我按下按钮时,在新的 ViewController 出现之前有一个可见的 3-4 秒延迟。我已经阅读了有关 stackoverflow 的其他问题,通常问题出在 destinationViewController 或 sourceViewController 上的代码(尚未完成)。就我而言,如果我在destinationViewController 上的viewDidLoad 上设置断点,则延迟甚至会在该代码执行之前发生。 </p>

<p>另外,我的代码不会做任何应该花费超过一毫秒的事情。</p>

<p>这是我的destinationViewController 的代码。我在 prepareForSegue... 方法中没有任何内容,仅供引用。</p>

<p>如何摆脱这种延迟?谢谢!</p>

<p>如果您需要其他方法来诊断此问题,请随时提出,谢谢。</p>

<pre><code>#import &#34;ViewSettingsViewController.h&#34;

@interface ViewSettingsViewController ()

@end

@implementation ViewSettingsViewController

- (void)viewDidLoad {
    ;
    // Do any additional setup after loading the view.

    if (==nil) {
      NSDate * now = [ init];
      NSCalendar *cal = ;
      NSDateComponents * comps = ;
      ;
      ;
      ;
      NSDate * date = ;
      ;
    } else {
      ];
    }
}

- (void)didReceiveMemoryWarning {
    ;
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using .
    // Pass the selected object to the new view controller.
}
*/

-(void) viewWillDisappear:(BOOL)animated {
    if (==NSNotFound) {
      // back button was pressed.We know this is true because self is no longer
      // in the navigation stack.
      ;

    }
    ;
}

@end
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>想通了。原来滞后时间在这一行:</p>

<pre><code>
</code></pre>

<p>从destinationViewController viewDidLoad 方法调用。那是重新加载每次启动 segue 的 View ,这是一种繁重的方法。我评论了那条线并解决了这个问题。不知道为什么我每次都想重新加载 superView ...</p></p>
                                   
                                                <p style="font-size: 20px;">关于iOS segue 慢 - 即使没有对destinationViewController 进行任何处理,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/28419849/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/28419849/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iOS segue 慢 - 即使没有对destinationViewController 进行任何处理