У меня есть пользовательский UITableViewCell, в котором есть 1 текстовое поле и метка. Я хотел бы включить редактирование текстового поля, только когда просмотр таблицы находится в режиме редактирования.
Я использую следующие методы для включения режима редактирования текстового поля и отключения режима редактирования текстового поля. но это не работает. Я не уверен, правильный ли это подход или нет. Если это не правильный путь, дайте мне знать, как отключить включение текстового поля?
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSIndexPath *rowToSelect = indexPath;
EditingTableViewCell *detSelCell;
detSelCell = (EditingTableViewCell *)[self.tableView cellForRowAtIndexPath:indexPath];
detSelCell.textField.enabled = self.editing;
// Only allow selection if editing.
if (self.editing)
{
return indexPath;
}
else
{
return nil;
}
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (!self.editing)
{
return;
}
EditingTableViewCell *detcell;
detcell = (EditingTableViewCell *)[self.tableView cellForRowAtIndexPath:indexPath];
detcell.selectionStyle = style;
detcell.textField.enabled = self.editing;
также у меня есть следующие строки:
self.tableView.allowsSelection = NO; // Keeps cells from being selectable while not editing. No more blue flash.
self.tableView.allowsSelectionDuringEditing = YES; // Allows cells to be selectable during edit mode.
Пожалуйста, помогите!