Я столкнулся с действительно загадочной ошибкой. Строка первая моего UITableView возвращает 1, а second возвращает 0 в indexPath! Как это возможно?
В моем `- (void) viewDidLoad` все по-прежнему прекрасно. Я выделяю первую строку успешно с помощью
currentRow = 0;
[tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:currentRow inSection:0]
animated:NO scrollPosition:UITableViewScrollPositionNone];
У меня есть переменная currentRow
для отслеживания выбранной строки (другой элемент управления изменяется в зависимости от выбранного в данный момент).
Теперь в моей функции делегата `didDeselectRowAtIndexPath` у меня есть:
-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {
...
NSLog(@"IndexPath: %@", [indexPath description]);
}
В журнале отображается следующее:
IndexPath: <NSIndexPath 0x79509d0> 2 indexes [0, 0]
, когда я касаюсь строки second и
IndexPath: <NSIndexPath 0x79509d0> 2 indexes [0, 1]
, когда я касаюсь строки first.
Нет вставки или удаления строк или сортировки и т.д., даже не прокрутки. Это простой UITableView, сгруппированный стиль, с 1 секцией и 3 строками. Что может быть причиной этого?
Спасибо за вашу помощь,
S