本地化

Swift 风格且现代的 NSLocalizedString

Localizability 是一个简单的 Swift 库,可以轻松地本地化字符串。

灵感来源于 sindresorhus/Defaults

安装

Swift PM

在 Swift Package Manager 中添加 https://github.com/Fus1onDev/Localizability

用法

首先,将一些键和值添加到 Localizable.strings 文件中。

"thisIsASampleText" = "This is a sample text.";

"iLikeString" = "I like %@.";

接下来,声明这些键。

import Localizability

extension Localized.Keys {
    static let thisIsASampleText = Key("thisIsASampleText")
    static let iLikeString = Key("iLikeString")
}

最后,你可以像这样访问它

let str = Localized[.thisIsASampleText]
print(str)

// "This is a sample text." (in your language)

字符串模板

如果添加了参数,则本地化字符串将用作模板。

let str = Localized[.iLikeString, "apples"]
print(str)

// "I like apples." (in your language)

SwiftUI 支持

这些 SwiftUI 组件也可用。

var body: some View {
    LocalizedText(key: .thisIsASampleText)
    // or
    LocalizedText[.thisIsASampleText]
}

许可证

MIT