UITableView Проблема - PullRequest
       10

UITableView Проблема

0 голосов
/ 19 мая 2010

Моим навигационным контроллером Root viewController является UIViewController (rootViewController). Он содержит UITableView, как показано ниже: альтернативный текст http://www.freeimagehosting.net/uploads/c9b0985b63.png

Когда я нажимаю кнопку со стрелкой (вызывая функцию в rootViewController), просмотр таблицы будет перемещаться влево, пока на левом краю не останется только кнопка со стрелкой.

Но теперь я также хочу нажать на ячейку, чтобы выполнить ту же функцию. Но проблема в том, что метод didSelectRowAtIndexPath: не может вызвать эту функцию в rootViewController. Так как это сделать?

Я думаю, что использую метод addObserver, но ничего не знаю об этом, любой может объяснить или дать мне некоторое представление, спасибо большое!

1 Ответ

0 голосов
/ 15 января 2014

Два способа: 1. Сделать контроллер вида «Карта» делегатом контроллера вида навигации. Тогда в

didSelectRowAtIndexPath:

вызов [delegate buttonPressed]; 2. При первом нажатии кнопки добавьте наблюдателя:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(buttonPressed:) name:@"flip_the_navigation_controller" object:nil];

Затем, когда ячейка была нажата, отправьте уведомление:

[[NSNotificationCenter defaultCenter] postNotificationName:@"flip_the_navigation_controller" object:nil];

И удалить наблюдателя в dealloc методе:

[[NSNotificationCenter defaultCenter] removeObserver:self];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...