UITableView Обнаруживает выбранную ячейку?
У меня есть несколько UITableViews в моем приложении, есть ли способ обнаружения ячейки/строки, которую пользователь выбрал в этом столбце?
Можно ли также программно отменить выбор ячейки/строки?
Спасибо.
Ответы
Ответ 1
Получить текущий выбранный путь индекса для таблицы:
NSIndexPath *path = [tableView indexPathForSelectedRow];
Снимите выделение текущей выбранной строки:
[tableView deselectRowAtIndexPath:[tableView indexPathForSelectedRow] animated:YES];
Ответ 2
Все это легко найти в документации для UITableView. Возможно, вам стоит взглянуть туда в следующий раз.
Здесь даже ссылка: http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableView_Class/Reference/Reference.html
Ответ 3
NSIndexPath *path = [tableView indexPathForSelectedRow];
В приведенной выше строке будет выбрано EXC BAD ACCESS, если не выбрана никакая продажа, поэтому отслеживайте выбранную ячейку с переменной экземпляра NSIndexPath и только снимите выделение, когда она фактически выбрана с помощью isSelected свойство ячейки.
UITableViewCell *cell = [tableView cellForRowAtIndexPath:someIndexPath];
if(cell.isSelected) {
[tableView deselectRowAtIndexPath:someIndexPath animated:YES];
}