标签加载比所有其他 UI segue 后的视图慢
Label loading slower than all other UI Views after segue
我使用 performSegueWithIdentifier 函数启动一个 segue,并且我在故事板上将 segue 声明为常规推送。了解屏幕上的每个元素都相对于屏幕的水平中心对齐以及从顶部对齐 space 或从底部或垂直中心对齐 space 也可能会有所帮助。
发生 segue 时,所有按钮几乎立即出现在应用程序上。然后,大约 30 秒后,标签出现。
我正在使用 swift 和最新版本的 xCode,我正在 iPhone 6 模拟器上进行测试。
知道会发生什么吗?
提前致谢!
----更新----
为了向您提供更多信息,该视图是一个类似于滑动解锁 iPhone 后的锁定屏幕的屏幕。它有 12 个按钮,每个数字键、返回和清除。 4 个空格显示输入。 4 个隐藏的“*”按钮,当您单击一个数字时,它们会出现在每个 space 的顶部。
所有这些都在 gui 中列出,所以我确定 xml 看起来很糟糕(充满了几个 'magic numbers'),但我会 post 在这里:
---- 更新 2 ----
看起来这种行为只有在我进入现场时才会发生。如果我将场景设置为主场景,所有内容都会同时加载。
您正在后台线程上执行 performSegue 调用——如果您没有进行网络调用,那么在后台线程上进行任何 UI 操作几乎总是造成这种长时间延迟的原因。将该调用包装在 dispatch_async 块中,
dispatch_async(dispatch_get_main_queue(), {
self.performSegueWithIdentifier("lockdownSegue", sender: nil)
})
我使用 performSegueWithIdentifier 函数启动一个 segue,并且我在故事板上将 segue 声明为常规推送。了解屏幕上的每个元素都相对于屏幕的水平中心对齐以及从顶部对齐 space 或从底部或垂直中心对齐 space 也可能会有所帮助。
发生 segue 时,所有按钮几乎立即出现在应用程序上。然后,大约 30 秒后,标签出现。
我正在使用 swift 和最新版本的 xCode,我正在 iPhone 6 模拟器上进行测试。
知道会发生什么吗?
提前致谢!
----更新---- 为了向您提供更多信息,该视图是一个类似于滑动解锁 iPhone 后的锁定屏幕的屏幕。它有 12 个按钮,每个数字键、返回和清除。 4 个空格显示输入。 4 个隐藏的“*”按钮,当您单击一个数字时,它们会出现在每个 space 的顶部。
所有这些都在 gui 中列出,所以我确定 xml 看起来很糟糕(充满了几个 'magic numbers'),但我会 post 在这里:
---- 更新 2 ----
看起来这种行为只有在我进入现场时才会发生。如果我将场景设置为主场景,所有内容都会同时加载。
您正在后台线程上执行 performSegue 调用——如果您没有进行网络调用,那么在后台线程上进行任何 UI 操作几乎总是造成这种长时间延迟的原因。将该调用包装在 dispatch_async 块中,
dispatch_async(dispatch_get_main_queue(), {
self.performSegueWithIdentifier("lockdownSegue", sender: nil)
})