Ich habe versucht, @ IBDesignable UIView Unterklasse nach diesem Tutorial (link). Erste benutzerdefinierte Ansicht geht gut. Aber wenn ich versuche, einen anderen zu machen, habe ich Fehler. Zuerst bekam ich failed to update auto layout status: the agent crashed
und Failed to render instance of ...
. Irgendwie fing ich an, in der Lage zu sein, ein Projekt mit diesen Fehlern zu biologisieren und auszuführen, aber dann erhalte ich einen neuen Fehler - EXC_BAD_ACCESS ...
on line let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView
. Hier ist die ganze Methode:Instantiate Ansicht von Nib wirft Fehler
func loadViewFromNib() -> UIView {
let bundle = NSBundle(forClass: self.dynamicType)
let nib = UINib(nibName: "advancedCellView", bundle: bundle)
let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView
return view
}
Mit ersten benutzerdefinierten UIView ist kein Problem. Ich benutze denselben Code ..
Irgendwelche Ideen? Danke
Sie schrieb: "Erste benutzerdefinierte Ansicht geht es gut." Bedeutet das, dass Sie die Ansicht tatsächlich einmal laden können, aber wenn Sie versuchen, sie erneut zu laden, erhalten Sie einen Fehler? –
Was ist der Grund für die Verwendung von 'NSBundle: forClass:' anstatt nur auf 'NSBundle.mainBundle()' zuzugreifen? Ist diese "Feder" in einem anderen Bundle gespeichert? –
Das deutet darauf hin, dass das Problem nicht mit dem Code, der die 'nib' lädt und instanziiert, sondern mit etwas in der' xib'-Datei selbst ist. Haben Sie die 'Klasse' für Ihre View-Unterklasse im Interface-Builder für die' xib' geändert? –