IBDesignable никогда не заканчивает обновление UITableViewCell в раскадровке
Это похоже на вопросэтот но не совсем то же самое.
Я создал подкласс UITableViewCell, который ссылается на пользовательское перо и пометил его как @IBDesignable. Изменения, которые вносятся как в код, так и в файл .xib, корректно отображаются в симуляторе и на устройстве, но не в раскадровке.
import UIKit
@IBDesignable class TextFieldTableViewCell: UITableViewCell {
var view: UIView!
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
setup()
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setup()
}
func setup() {
view = loadViewFromNib()
view.frame = bounds
view.autoresizingMask = [UIViewAutoresizing.FlexibleWidth, UIViewAutoresizing.FlexibleHeight]
contentView.addSubview(view)
}
func loadViewFromNib() -> UIView {
let bundle = NSBundle(forClass: self.dynamicType)
let nib = UINib(nibName: "TextFieldTableView", bundle: bundle)
let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView
return view
}
}
Раскадровка отображает постоянное «Обновление Designables».
Разбиение проблемы на менее сложный тест, состоящий только в создании подкласса UITableViewCell и маркировке его как @IBDesignable, приводит к тому же постоянному «Обновлению Designables».
import UIKit
@IBDesignable class TextFieldTableViewCell: UITableViewCell {
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
}
}
Кто-нибудь имел успех с созданием подкласса @IBDesignable UITableViewCell? Это происходит в Xcode 7 beta 6 и beta 5.