Как выбрать строки в режиме редактирования?
У меня есть UITableView, который доступен для редактирования. Я совершаю изменения через:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
В режиме редактирования я хотел бы, чтобы пользователь мог выбрать строку, которая будет вызывать новое представление. Я не знаю, как это сделать. Я подозреваю, что он будет в:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
Но как я могу определить, находится ли пользователь в режиме редактирования или нет?
UPDATE:
Режим редактирования переключается с помощью:
self.navigationItem.rightBarButtonItem = self.editButtonItem;
Ответы
Ответ 1
Чтобы разрешить выбор во время редактирования, вам нужно установить для свойства allowsSelectionDuringEditing
значение UITableView
значение YES. Затем он вызовет сообщение didSelectRowAtIndexPath
. Дополнительную информацию об этом свойстве можно найти здесь:
http://developer.apple.com/iphone/library/documentation/uikit/reference/UITableView_Class/Reference/Reference.html#//apple_ref/occ/instp/UITableView/allowsSelectionDuringEditing
Затем вы можете увидеть, находится ли пользователь в режиме редактирования, запустив код следующим образом:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (tableView.editing == YES) {
// Table view is editing - run code here
}
}