【问题标题】:Navigation working very slow导航工作很慢
【发布时间】:2016-01-27 10:07:50
【问题描述】:

关于使用基于导航的应用程序执行 3-4 推送。 当我弹出 4 个控制器视图等时,大约需要 2 秒的延迟时间。 我正在执行一些后台操作以将图像存储在文件管理器中 即使当我按下后退按钮时,由于导航速度慢,上一个视图导航栏也会被点击。 我无法理解延迟问题。

提前致谢。

【问题讨论】:

  • 你能在主队列上试试吗dispatch_async(dispatch_get_main_queue()) { navigationController.popViewControllerAnimated(true) }
  • 请确保后台操作没有占用主线程。 More Over 请注意所有课程中的 ViewWillAppear 和 ViewDidAppear。

标签: ios objective-c uinavigationcontroller


【解决方案1】:

尝试编写代码推送到主线程,

dispatch_async(dispatch_get_main_queue(), ^(){

    [self.navigationController pushViewController:yourViewController];
});

【讨论】:

    【解决方案2】:

    假设你从 viewcontroller A 到 viewcontroller B 然后从 B 返回到 A,如果你有一些 webservise 调用或在 A 中需要时间的东西,那么会有延迟,尽量避免这种情况并在 main 中使用它线程。

    【讨论】:

    • 不,没有网络服务相关的操作。只是在本地文件管理器中保存图像的一些背景工作
    • 那是你延迟的地方
    • 这就是我正在做的事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多