2009-05-05 5 views
1

У меня есть класс RootViewController, который унаследован от UITableViewController. Когда ячейка отменяется пользователем, я хочу включить/отключить определенные кнопки на панели инструментов.iPhone Не удается отменить UITableViewCell

Как заблокировать событие отмены выделения?

-(void)tableView:(UITableView *)tableView deselectRowAtIndexPath:(NSIndexPath *)indexPath animated:(BOOL)animated 
{ 
    if(indexPath.row <= rowNumber) 
    { 
     [viewButtton setEnabled:NO]; 
     [editButtton setEnabled:NO]; 
    } 
} 

Я пробовал использовать этот метод, но он, похоже, не выполняется вообще. Любые идеи, как это сделать?

ответ

1

Я не думаю, что есть событие deselectRowAtIndexPath, есть метод, который вы можете вызвать, чтобы отменить выбор indexPath, но, глядя на SDK, я не вижу для этого события в UITableViewDelegate: http://developer.apple.com/iPhone/library/documentation/UIKit/Reference/UITableViewDelegate_Protocol/Reference/Reference.html.

Не могли бы вы включить или отключить определенные кнопки на панели инструментов во время события didSelectRowAtIndexPath: event?

-Rog

0

Это в настоящее время бета-только SDK, который означает, что он может быть багги/изменено/неподдерживаемый ...

я заметил, что ваше объявление метода не соответствует SDK (в по крайней мере, версия, которую я имею).

Попробуйте удалить animated:(BOOL)animated; Я не думаю, что это применимо здесь.

См. Строку ~ 345 в UITableView.h и/или щелкните правой кнопкой мыши по адресу didDeselectRowAtIndexPath и «Перейти к определению», где вы, вероятно, найдете способ определения метода делегата.

Тем не менее, если ваша цель состоит в том, чтобы просто «включить/отключить некоторые кнопки при выборе ячейки»,

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath; 

должен работать нормально. Это произойдет после выбора ячейки и до ее отмены. «Отменить выбор» должен делать больше с анимацией, чем взаимодействие с пользователем. Единственная причина, по которой я могу думать, что вы хотите использовать отмену выбора, - это, может быть, эстетическая ценность обеспечения того, чтобы ваше событие происходило только после того, как ячейка выбора больше не выделяется.

Смежные вопросы