To jest podobne pytanie do this, ale nie do końca takie samo.IBDesignable nigdy nie kończy aktualizacji UITableViewCell w storyboardie
Utworzono podklasę obiektu UITableViewCell, który odwołuje się do niestandardowej końcówki i oznacza ją jako @IBDezgnable. Zmiany dokonane zarówno w kodzie, jak i w pliku .xib są wyświetlane poprawnie w symulatorze i na urządzeniu, ale nie w scenorysie.
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
}
}
W serii ujęć wyświetlany jest ciągły komunikat "Aktualizacje graficzne".
Łamanie problemu w dół do mniej skomplikowanego testu tylko instacji do UITableViewCell i oznaczając go jako @IBDesignable wyniki w tym samym stałe „Designables Aktualizacja”.
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)
}
}
Czy ktoś miał sukces z tworzeniem podklas UIDableViewCell @IBDesignable? Dzieje się tak w Xcode 7 beta 6 i beta 5.
Mam do czynienia z tym samym problemem. Ale kiedy umieściłem tableViewCell w normalnym ViewController, mogę wykonać IBDesignable. Tak więc, uważam, że jest to błąd kodu XCode, którego nie można przypisać do komórki w TableView –
Apple odpowiedział na zgłoszony przeze mnie raport o błędzie i rzeczywiście jest to błąd. – Hama
Dzięki, bardzo pomaga –