Interface Builder でライブ レンダリングを使用して、UIButtons のローカライズ可能なクラスを実装しようとしています。これは私がこれまでに持っているコードです:
@IBDesignable class TIFLocalizableButton: UIButton {
@IBInspectable var localizeString:String = "" {
didSet {
#if TARGET_INTERFACE_BUILDER
var bundle = NSBundle(forClass: self.dynamicType)
self.setTitle(bundle.localizedStringForKey(self.localizeString, value:"", table: nil), forState: UIControlState.Normal)
#else
self.setTitle(self.localizeString.localized(), forState: UIControlState.Normal)
#endif
}
}
}
レイアウトは IB で正しく更新されていますが、テキストが表示されません。動作する UILabel で同じ実装を作成しました: https://github.com/AvdLee/ALLocalizableLabel
これを修正する方法についてのアイデアは大歓迎です!