【问题标题】:How to localize Accessibility Label(Description) with Interface Builder?如何使用 Interface Builder 本地化辅助功能标签(描述)?
【发布时间】:2017-06-20 08:59:50
【问题描述】:
为了为我的应用添加 VoiceOver 支持(使用 Interface Builder),我将按钮的“辅助功能标识 -> 描述”设置为“静音”like this。这实际上设置了辅助功能标签。
现在,我想为这个按钮添加本地化,包括它的可访问性标签。
我怎样才能做到这一点?
ps:我已经尝试了编程方式(NSLocalizedString)并为每种语言创建了 xib 文件。但是它们都不利于维护。我想知道我是否可以用“.strings”方式对其进行本地化
【问题讨论】:
标签:
ios
xcode
macos
cocoa
interface-builder
【解决方案1】:
您可以像这样创建扩展,然后在 UI Builder 中设置键,但在 .strings 文件中处理本地化
@IBDesignable
public extension UIView {
@IBInspectable
var accessibilityLabelKey: String {
get { return "" }
set {
self.accessibilityLabel = NSLocalizedString(newValue, comment:newValue)
}
}
}