Я создаю приложение с некоторыми элементами UIBarButton, некоторые из которых будут запускать UIPopoverController при нажатии. Я бы хотел, чтобы это отключило что-либо от возможности быть связанным с ним, что в основном происходит по умолчанию. Однако я заметил, что другие элементы UIBarButtonItems на той же панели инструментов будут активны, пока popover активен. Я пытался добавить:UIPopover не блокирует элементы UIBarbutton от нажатия
[_popOver setPassthroughViews:nil];
до показывая его, но UIBarButtonItems все еще в состоянии быть нажата в то время как попы над показана. Я понял, что могу отключить кнопки, но я бы предпочел не делать этого, так как мне пришлось бы вводить все виды ненужного состояния, пока каждый вид всплытия открыт. Есть ли способ удалить всплывающее окно, если что-либо выбрано вне всплывающего окна (включая другие UIBarButtonItems)?
Базового код Репрографических проблем:
- (IBAction)rightButtonPressed:(id)sender {
UIViewController *vc = [[UIViewController alloc] init];
_popOver = [[UIPopoverController alloc] initWithContentViewController:vc];
[_popOver setPassthroughViews:nil];
[_popOver presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
- (IBAction)leftButtonPressed:(id)sender {
NSLog(@"Why am I active while pop-over is visible?");
}
Добавить оба элемент панели кнопок в ту же панель навигации.