Während auf Swift 4.0
Migration ich ein Problem bin vor mit @IBInspectable
,@IBInspectable in Swift 4.0
open class SVContactBubbleView: UIView
{
@IBInspectable open var dataSource: SVContactBubbleDataSource? //ERROR..!!
@IBInspectable open var delegate: SVContactBubbleDelegate? //ERROR..!!
}
public protocol SVContactBubbleDataSource
{
//Methods here
}
public protocol SVContactBubbleDelegate
{
//Methods here
}
Der Fehler, ist angezeigt:
Eigenschaft nicht @IBInspectable markiert werden kann, weil seine Art kann nicht werden in Objective-C vertreten
in Swift 3
war es wo Richtig. Ich verstehe nicht, was in Swift 4
schief gelaufen ist.
Auch der Compiler zeigt keinen Vorschlag. Es zeigt nur eine Fehlermeldung an.
Der Fehler ist wirklich offensichtlich. In Swift 3 konnte es wirklich nicht funktionieren, auch wenn es die Compilation bestanden hat. Wie hat der Editor in Interface Builder in Swift 3 nach dir gesucht? – Sulthan
Sind die Protokolle Protokolle? Klasse? und mit '@ objc' gekennzeichnet? Beachten Sie auch, dass Delegierte wahrscheinlich "schwach" sein sollten. – Sulthan
Wenn Sie sie in IB verbinden möchten, sollten sie '@ IBOutlet's sein, nicht' @ IBInspectable' –