2015-08-23 26 views
7

Ich habe vor kurzem Xcode 7 heruntergeladen, das mit Swift 2 geliefert wird. Unten ist der Fehler, den ich bekomme, wenn ich versuche, meine Klasse UITableViewDataSource und UITableViewDelegate, die in Xcode 6.2 aber funktioniert wirft einen Fehler in Xcode 7 beta 5Xcode 7 beta 5 Swift 2 redundante Übereinstimmung mit Protokollfehler

class TableViewController: UITableViewController, UITableViewDataSource, UITableViewDelegate { 
} 

//error: Redundant conformance of 'TableViewcontroller' to protocol 'UITableViewDataSource'

ich google nach Antworten gesucht, aber ich konnte nicht für sie ein Update bekommen.

+0

'UITableViewController' entspricht bereits den beiden Protokollen. Sie müssen es nicht erneut angeben. – rmaddy

+0

wirklich? also sollte ich überspringen, dass ich mit meinem Projekt weitermache. Thanks a bund man –

Antwort

26

Es ist nicht notwendig anzugeben, dass Sie TableViewController mit den beiden Protokollen übereinstimmt, weil die UITableViewController bereits tut. Also wird Ihre Klasse auch wegen der Vererbung.

Alles, was Sie brauchen, ist:

class TableViewController: UITableViewController { 
} 

Es scheint Swift2 strenger ist dies etwa als Swift ist.

+0

Dies ist ein wenig ärgerlich, wenn Sie Ihre 'UITableViewDelegate' und' UITableViewDataSource' zu ​​Organisationszwecken in separate Protokollerweiterungen in Ihrer 'UITableViewController' Klasse extrahieren wollen. –

+0

@CraigOtis Ja Same will ich aber bekommen redundante Konformität Fehler. Kannst du helfen zu extrahieren? –

+0

@PinankLakhani Sie sollten eine separate Frage öffnen. –

Verwandte Themen