iPhone не может отменить выбор UITableViewCell - PullRequest
1 голос
/ 05 мая 2009

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

Как мне перехватить событие отмены выбора?

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

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

Ответы [ 2 ]

1 голос
/ 05 мая 2009

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

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

-Rog

0 голосов
/ 05 мая 2009

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

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

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

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

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...