iOS8 performSegueWithIdentifier运行速度太慢

时间:2015-01-21 15:23:36

标签: iphone performance ios8 segue uistoryboardsegue

这只发生在iOS8中。

如果我在按钮单击处理程序中运行“performSegueWithIdentifier”。例如

- (IBAction)buttonPressed:(id)sender {
    [self performSegueWithIdentifier:@"SegueFromMenuToList" sender:self];
}

然后它工作正常。

但是,如果我显示一个警报视图。然后在alerview委托处理程序中,调用“performSegueWithIdentifier”,加载需要4秒!

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
    [self performSegueWithIdentifier:@"SegueFromMenuToList" sender:self];
}

这只会在我第一次调用“performSegueWithIdentifier”时发生,并且仅在iOS 8下发生。

任何帮助都将受到高度赞赏。谢谢!

更新

试图在UI线程中运行并不能解决问题。

  1. 如果它只是第一次滞后,有没有办法预加载它?
  2. 为什么这只发生在iOS 8上?

1 个答案:

答案 0 :(得分:-2)

UIAlertView在iOS8中已弃用。开始使用UIAlertController 它在iOS8中运行缓慢,因为它必须执行2个任务。一种是删除警报视图,另一种是显示segue。有时可能会崩溃(我遇到过)