Ich habe eine iPhone-App, die in der 2.x-Version des SDK funktioniert. Wenn ich auf 3.0 aktualisiert habe, wird die didSelectRowAtIndexPath-Methode nicht mehr aufgerufen, sodass die Aktion nicht ausgeführt wird, wenn ein Benutzer eine Zeile markiert. Dies ist eine benutzerdefinierte UITableViewCell, die sich in einer separaten Nib von der UITableView befindet. Sowohl die Datenquelle als auch der Datendelegate sind in Interface Builder richtig verdrahtet, und wenn ich es zu 2.21 kompiliere, funktioniert es. In Version 3.0 macht das Klicken auf die Zeile nichts.iPhone - UITableView nicht aufrufen didSelectRowAtIndexPath-Methode in 3.0 SDK
This question, erwähnt ein ähnliches Problem, aber sie erwähnen einen anderen Ersthelfer, der den Klick nimmt. Ich habe keine First-Responder-Methoden, die an die Zelle oder den Tisch angeschlossen sind.
Wie kann ich die Tabelle in 2.x und 3.0 richtig funktionieren lassen? Die benutzerdefinierte Zelle hat ein paar Beschriftungen und ein Bild, und ich möchte nur auf eine Zeile klicken und die Details für diese bestimmte Zeile anzeigen können.
Und Sie sind sicher, dass die Eigenschaft allowsSelection auf YES gesetzt ist? – pix0r
Ja, die allowsSelection -Eigenschaft in UITableView ist auf YES gesetzt. Wenn auf eine Zeile geklickt wird, wird sie für eine Sekunde hervorgehoben und dann wieder normal (nicht hervorgehoben), aber die Methode didSelectRowAtIndexPath auf dem Ansichtscontroller wird nicht aufgerufen. –
Haben Sie überprüft, ob willeSelectRowAtIndexPath funktioniert? –