Ich habe gerade ein iOS-Projekt geerbt, das Apple's ResearchKit (RK) enthält.Upgrade auf Swfit 3: kann 'init', das als nicht verfügbar markiert wurde, nicht überschreiben
Ich habe auf die neueste Version von RK und auch auf Swift 3 aktualisiert. Während ich in iOS und RK gearbeitet habe, bin ich immer noch nicht sehr zuversichtlich. Wie auch immer, es gibt eine Klasse namens SurveyTask
, die eine ORKOrderedTask
von RK implementiert.
cannot override 'init' which has been marked unavailable
diese Funktion am Ende, stepz
bereits definiert, die wir haben:
super.init(identifier: "survey", steps: stepz)
ich die ORKOrderedTask
Klassendefinition geprüft, die eine init
Funktion hat.
Ich habe über initializers gelesen hatte, aber habe nichts gefunden. Die Verwendung von override
oder convenience
vor der init
in SurveyTask
ändert nichts. Derselbe Fehler. Jede Hilfe würde sehr geschätzt werden.
XCode Version 8.1.
Die init des 'ORKOrderedTask' scheint eine Kennung müssen also warum Versuchen Sie nicht, die normale 'init (Bezeichner: String, Schritte: [QRKStep]?) ' – LoVo
Die Sache ist, ich glaube nicht, dass der Zweck der' init() 'ist, den anderen zu überschreiben. Es wird nur ausgeführt, wenn 'SurveyTask' instanziiert wird. Der Aufruf mit "super" liefert diese Argumente. –
Versuchen Sie, mark init als 'open', nicht' public' zu markieren. –