代码之家  ›  专栏  ›  技术社区  ›  Sandeep Bhandari

对于Xcode中的每个目标,如何在同一个故事板上使用不同的storyboard.strings?

  •  1
  • Sandeep Bhandari  · 技术社区  · 8 年前

    我的项目中有多个故事板。假设其中一个是 Main.storyboard . 我有几个硬编码的字符串 主.故事板 . 因为我们正试图创建一个白色标签的应用程序,所以我向现有项目添加了多个目标。

    现在每个目标都使用相同的 主.故事板 因为用户界面没有变化。但是我需要在 主.故事板 每个目标。

    例如,在target中,当为target b构建字符串时,字符串应该说“欢迎使用a”,而字符串应该说“欢迎使用b”。

    我能想到的一个方法是创造 IBOutlet 给每一个这样的人 UIComponent 并通过添加 if else 声明或简单的方法将使本地化 主.故事板 有不同的 Main.strings 每个目标的文件。

    我更喜欢使用第二种方法,但我不知道如何实现它。任何帮助都将不胜感激。这里不需要代码,因此不需要添加任何代码片段。如果你需要项目结构的屏幕截图,让我知道:)

    1 回复  |  直到 8 年前
        1
  •  1
  •   André Slotta    8 年前
    1. 添加一个 Localizable.strings 每个目标的文件
    2. 在每个中添加一个条目 可本地化的.strings 具有公用密钥但文本不同的文件
    3. 将文本设置为 NSLocalizedString 功能

    example

    更新:

    而不是 可本地化的.strings 你也可以添加 Main.strings (名称取决于故事板名称)每个目标的文件。在这些文件中,您可以使用 {element_identifier}.text 作为钥匙。您可以通过右键单击故事板找到标识符->“打开为”->“源代码”。

    example 2