Ich bin auf einen wirklich rätselhaften Fehler gestoßen. Die erste Zeile meiner UITableView gibt 1 zurück und die zweite Zeile gibt 0 im indexPath zurück! Wie ist das überhaupt möglich?
In meinem `- (void) viewDidLoad` ist noch alles in Ordnung. Ich hebe die erste Zeile erfolgreich mit hervor
currentRow = 0;
[tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:currentRow inSection:0]
animated:NO scrollPosition:UITableViewScrollPositionNone];
Ich habe die Variable currentRow
zum Verfolgen, welche Zeile ausgewählt ist (ein anderes Steuerelement ändert sich entsprechend der aktuell ausgewählten).
Jetzt habe ich in meiner `didDeselectRowAtIndexPath`-Delegatenfunktion:
-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {
...
NSLog(@"IndexPath: %@", [indexPath description]);
}
Das Protokoll zeigt Folgendes:
IndexPath: <NSIndexPath 0x79509d0> 2 indexes [0, 0]
wenn ich die zweite Reihe berühre und
IndexPath: <NSIndexPath 0x79509d0> 2 indexes [0, 1]
wenn ich die erste Reihe berühre .
Es gibt kein Einfügen oder Löschen oder Sortieren von Zeilen usw., auch kein Scrollen. Es ist eine einfache UITableView, gruppiert, mit 1 Abschnitt und 3 Zeilen. Was könnte das verursachen?
Danke für deine Hilfe,
S.