Поповеры в UITableView - PullRequest
       24

Поповеры в UITableView

0 голосов
/ 01 июля 2011

Я хотел бы отображать всплывающие окна с символами UITableView в качестве содержимого (это работает) при некоторых нажатиях кнопок, а затем получать выбранный элемент в виде строки в виде заголовка кнопки или некоторого текста текстового просмотра.Я нашел несколько примеров того, как сделать это с протоколами, но все равно получаю ошибку.Мой код:

В popoverViewController.h

@protocol popoverViewControllerDelegate <NSObject>
-(void)getRowText:(NSString *)string;
@end

Я объявляю переменную id Delegate2 и устанавливаю ее свойство равным:

@property(nonatomic,assign) id<popoverViewControllerDelegate> delegate2;

В файле popoverViewController.m ясинтезировать переменную, и в методе didSelectRowAtIndexPath у меня есть это, и эта строка, кажется, вызывает ошибку, которую я имею:

[self.delegate2 getRowText:[someArray objectAtIndex:indexPath.row]; 

В mainViewController.m я добавляю popoverViewControllerDelegate к протоколу ViewControllers и имеюего заголовочный файл импортирован.И затем есть некоторый код в методе -(void)getRowText:, который не вызывается.

UIPopovers, и такие настраиваются так, как они работают по мере необходимости, проблема возникает, когда я нажимаю строку в табличном представлении.Я получаю

Завершающее приложение из-за необработанного исключения 'NSInvalidArgumentException', причина: '* - [UIPopoverViewController getRowText:]: нераспознанный селектор, отправленный экземпляру 0x57ca80'

Может ли кто-нибудь дать совет по этому поводу?

1 Ответ

0 голосов
/ 07 июля 2011

Наконец-то нашел ошибку и не могу поверить, насколько глупой я была.

У меня был viewController.delegate2 = self. строка с точкой вместо точки с запятой, мне интересно, почему это скомпилировано.

...