У меня есть UIPopoverController с собой как делегат: Я получаю вызовы, когда я выхожу за пределы контроллера popover, но когда я нажимаю внутрь, я тоже хочу уволить, поэтому я использую -dismissPopoverAnimated: но делегат не вызывается в этом случае. Это нормально? Это ошибка, или я делаю что-то неправильно?Увольнение UIPopoverController с -dismissPopoverAnimated: не вызовет делегата?
newDocPopoverController = [[UIPopoverController alloc] initWithContentViewController:vc];
[newDocPopoverController setPopoverContentSize:CGSizeMake(240, 44*4)];
[newDocPopoverController presentPopoverFromBarButtonItem:sender
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
[newDocPopoverController setDelegate:self];
UPDATE:
Ах, независимо от происхождения проблемы (ли это ошибка или это предполагаемое поведение) вызов делегата по себе решает проблему :)
Когда contentViewController-х я коснулся меня. Я позвоню родительскому делегату UIPopoverController.
if ([parentPopoverController.delegate popoverControllerShouldDismissPopover:parentPopoverController]){
[parentPopoverController dismissPopoverAnimated:YES];
[parentPopoverController.delegate popoverControllerDidDismissPopover:parentPopoverController];
}r];
Я только что наткнулся на ту же «проблему», спасибо за указание, как ее исправить; то есть. отпустите диспетчер popover, затем вызовите метод делегата. – Jack