当我在 SwiftUI 中使用
Text("Lorem")
时,它会在构建时向 Xcode 字符串目录 (Localized.xcstrings) 添加一个 Lorem
键。我想对在视图之外定义的字符串实现相同的行为。
这是我尝试过的:
LocalizedStringKey(“Lorem ipsum”)
String(localized: “Lorem ipsum”)
这两种方法都有效,但前提是我手动将键添加到字符串目录中。这并不理想,因为如果我忘记添加密钥,它可能会被忽视。
另一种方法是在我的代码中使用 Text() 并将其传递,但我更愿意避免将我的表示层与应用程序的其余部分耦合。我想将 String (或类似类型)传递到我的 SwiftUI 视图,然后使用 Text() 渲染它。这样,我可以确保在字符串到达 UI 之前不会应用任何修饰符或意外更改。
确保整个应用程序中使用的字符串在构建时自动添加到字符串目录而不依赖 Text() 进行字符串管理的最佳实践是什么?
我的目标是 iOS 15+。
查看对该问题的评论。如果一切设置正确,Xcode 会在构建时将
LocalizedStringKey()
中的键添加到字符串目录中。