2012-01-07 3 views
0

Это заставляет меня почесывать голову. У меня есть контроллер представления, реализующий UIPopoverControllerDelegate:UIPopoverControllerDelegate методы, которые никогда не называются

@interface MyViewController : UIViewController<UIPopoverControllerDelegate> { 

Он реализует методы этого протокола, например, так:

- (bool)popoverControllerShouldDismissPopover 
{ 
    NSLog(@"THIS IS NEVER CALLED");  
    return true; 
} 

- (void)popoverControllerDidDismissPopover 
{ 
    NSLog(@"THIS IS ALSO NEVER CALLED"); 
} 

создать контроллер представления, чтобы показать в пироге, и контроллер поповера , например:

-(IBAction)buttonPress:(id)sender 
{ 
    self.popoverViewController = [[MyPopoverViewController alloc] init]; 
    self.popover = [[UIPopoverController alloc] initWithContentViewController:popoverViewController]; 
    self.popover.delegate = self; 

    CGRect frame = button.frame; 
    [self.popover presentPopoverFromRect:frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
} 

Я очень четко устанавливаю popover.delegate = self. HOWEVER, методы делегата popoverViewController, которые я реализовал, никогда не вызываются.

Любые идеи?

Редактировать: Примечание. Я использую ARC & LLVM.

+0

Правильно ли отображается popover? – timthetoolman

+0

Да - отображается правильно, & увольнение - просто не вызывая методы делегата. –

ответ

3

Я думаю, что ваши реализации метода делегата неверны. Попробуйте

- (BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController 

, а не - (BOOL) popoverControllerShouldDismissPopover

и

- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController 

вместо

- (void)popoverControllerDidDismissPopover 

это важно, что вы получите имена и параметры правильного метода в противном случае, они не будут называться.

Удачи вам!

+0

Ahhh ... да, вот и все. Ах, радости узнать ваш ответ - это что-то очень простое, что вы не замечаете ... –

+1

Не беспокойтесь. Иногда это просто берет еще пару глаз! – timthetoolman

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