gpt4 book ai didi

swift - UIButton 与 @IBinspectable 用于在 Swift/Xcode 中进行本地化

转载 作者:行者123 更新时间:2023-11-30 12:26:43 25 4
gpt4 key购买 nike

我正在尝试为所有 UIButton 子类进行扩展,这将允许我在 Xcode UIBuilder 中键入一个键,并让它在实际构建时自动将该键更改为适当的语言。

当我运行应用程序时它运行良好,但我在构建器中输入的关键字未在 UI 中本地化。

我尝试使用#if builder 语句和prepareForInterfaceBuilder()。这是我到目前为止得到的:

extension UIButton {
@IBInspectable var localizedText: String {
set (key) {
self.setTitle(key.localized, for: .normal)
}
get {
return (self.titleLabel?.text)!
}
}
}

class Button: UIButton {
.
.
.
override func prepareForInterfaceBuilder() {
super.prepareForInterfaceBuilder()
self.titleLabel?.text = localizedText
}
}

如有任何帮助,我们将不胜感激!

最佳答案

使用此扩展...

extension UIButton {
@IBInspectable var localizedTitle: String {
get { return "" }
set {
self.setTitle(newValue.localized, for: .normal)
}
}
}

extension String {
var localized: String {
get { return NSLocalizedString(self, comment: "") }
}
}

关于swift - UIButton 与 @IBinspectable 用于在 Swift/Xcode 中进行本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44113962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com