UIButton в PopoverView с собственным XIB должен отправить действие mainview - PullRequest
1 голос
/ 17 июля 2011

У меня есть представление popover, которое вызывается с помощью:

Info *infoview = [[Info alloc]init];
pop = [[UIPopoverController alloc]initWithContentViewController:infoview];
[pop setDelegate:self];
[pop presentPopoverFromRect:CGRectMake(-60, 30, 400, 400) inView:bigMenuView permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
[infoview release];

В этом представлении popoverview (см. В коде) есть файл info.xib, содержащий несколько UIBUttons.

Теперь я хочуизменить что-то.в моем «mainview» после нажатия на кнопку.

Примечание: я могу получить доступ к своему методу IBAction в «Первом ответчике», но это не действие.

1 Ответ

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

Чтобы сделать то, что вы хотите, объявите свойство для кнопки в Info, что-то вроде:

@property(retain) IBOutlet UIButton *myButton;

Теперь синтезируйте его, в части реализации.Для того, чтобы кнопка отправила правильное действие на правильную цель, вы должны сделать следующее:

Info *infoview = [[Info alloc]init];
// set the action/target here
[infoView.myButton addTarget:bigMenuView
                      action:@selector(theSELYouWant)
            forControlEvents:UIControlEventTouchUpInside];
pop = [[UIPopoverController alloc] initWithContentViewController:infoview];
[pop setDelegate:self];
[pop presentPopoverFromRect:CGRectMake(-60, 30, 400, 400)
                     inView:bigMenuView
   permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
[infoview release];

Я предполагал, что основным видом является bigMenuView.
Это заставит кнопку отправлятьtheSELYouWant сообщение bigMenuView при каждом прикосновении.

...