【问题标题】:Will utilizing the "Show" in iOS storyboard cause an iOS app to crash?在 iOS 故事板中使用“显示”会导致 iOS 应用程序崩溃吗?
【发布时间】:2017-06-17 13:34:26
【问题描述】:

总结:

我正在编写一个 Swift iOS 应用程序,其中包含登录屏幕和选项卡视图控制器中的几个其他视图。我正在通过“控制”+左键单击->“显示”方法从一个视图控制器转换到另一个视图控制器。我想确保我的 iOS 应用程序设计不正确,导致内存泄漏或其他缺陷。

相关问题:

  • 这是否意味着每次调用“Show”时都会创建该 ViewController 的新视图?
  • 这会导致内存泄漏或应用程序崩溃吗?
  • 我是否需要在某个时候展开 ViewControllers?
  • 在启动另一个 ViewController 时展开 ViewController 的最佳方法是什么?

【问题讨论】:

    标签: ios swift uiviewcontroller


    【解决方案1】:

    您所说的似乎是手动创建一个 Show Segue(一个转换,通过 Storyboard 使用 ctrl + 单击并拖动到另一个 ViewController)。这是创建从一个 ViewController 到另一个 ViewController 的 Segue(转换)的一种正确方法。要利用它,您需要使用 Storyboard 上的左侧面板,给这个 segue 一个标识符,并使用这个标识符以某种方法或动作(比如单击按钮,等)使用 performSegue 方法:

    self.performSegue(withIdentifier: "NameOfSegue", sender: self)

    以下是文档中有关 segues 的更多信息: https://developer.apple.com/library/content/featuredarticles/ViewControllerPGforiPhoneOS/UsingSegues.html

    您可以在“在运行时修改 Segue 的行为”部分阅读更多详细信息。引用一段话:“大部分工作发生在呈现视图控制器中,它管理到新视图控制器的转换。新视图控制器的配置基本上遵循与您自己创建视图控制器并呈现它时相同的过程。 "内存泄漏在这里应该不是问题。 Unwind segues 可以让你关闭已经呈现的视图控制器,但它们并不总是需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多