2016-10-31 32 views
0

Ich habe mein Projekt vor nicht allzu langer Zeit in Swift 3 konvertiert.Konvertierung zu swift 3 kompiliert nicht alles in swift 3

Alles ist in Swift 3, Projekt, Hülsen usw.

Problem ist,

func tableView(_ tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath)

noch für meine Tableview Delegierten genannt wird, statt

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)

I versucht mit einem neuen Projekt von Grund auf, das Problem passiert nicht. ich neu gestartet XCode, gereinigt Buildordner, abgeleiteten Daten gelöscht ... nichts funktioniert :(

Antwort

1

Problem ist ,

func tableView(_ tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath) 
noch

ist für meine Tableview Delegierten genannt, statt

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 

Sie müssen löschen die erste. Ansonsten, ja, es kann angerufen werden. Außerdem muss die zweite in geschweiften Klammern für eine Klassendeklaration sein, die die Übernahme von UITableViewDelegate deklariert (oder von UITableViewController erbt).

+0

Problem ist, es ist wie Sie vorschlagen, es zu tun, ich habe nicht beide Funktionen zusammen, aber wenn ich didSelectRowAt allein verwende, ist es nie genannt – AncAinu

+0

Ich versichere Ihnen, dass es sein wird, wenn Sie alles tun, was ich gesagt habe. – matt

+0

Also ich fand, was nicht funktioniert, ** wenn ** die Oberklasse von meinem 'UIViewController', die dem Tischdelegaten entsprechen, die besagten Funktionen ** nicht implementiert ** dann hat mein Ansichtsteuerpult nicht die swift3-Version von Methoden genannt. Ich denke, das ist kein normales Verhalten. – AncAinu

-1

ändern didSelectecRowAt-cellForRowAt

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath){ 
    ... 

und fügen Sie in:.

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate { 
    ... 
+0

Ich meine, es ist nett zu versuchen, aber diese Antwort nur Sinn in Bezug auf meine Frage – AncAinu