有没有办法在 Xcode 故事板属性检查器中使用 plist 文件字符串?

Is there a way to use plist file strings in the Xcode Storyboard Attribtutes inspector?

我发现我必须为 segue 标识符声明相同的字符串值两次:

  1. 在我的 prepare() 存根中处理 segue 逻辑的代码
  2. 在检查器中一次在故事板中设置 segue ID

显然,这会带来许多潜在的拼写错误问题,以及两个字符串值之间的问题。

如果可能的话,我想做的是在 plist 文件中定义一次我的 segue ID,然后在上面列出的两个地方两次引用相同的定义。当然我知道可以在 Swift 中引用 plist 值,但这在 Storyboard 属性检查器中可能吗?

我认为这不可能,但我有两种选择供您选择:

  1. 使用类似 R.swift 的内容。此工具将解析您的 Storyboard 并创建可在代码中使用的常量

  2. 不是通过标识符来识别 segue,而是通过其目标控制器来识别。

示例:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if let controller = segue.destination as? MyViewController {
      controller.value = self.value
    }
}

我个人使用数字 2,我很少阅读 segue

的名称 属性