1

Я хочу представить контроллер представления в качестве всплывающего окна в iPhone из UIBarButtonItemПредставляя поповер из UIBarButtonItem в iPhone

я написал следующий фрагмент кода на действие кнопки.

-(IBAction)showAvailableCategory:(UIButton *)sender 
{ 
    CategoryPopup *categoryPopupViewController = [[CategoryPopup alloc]init]; 
    UIPopoverPresentationController *popOverCat = categoryPopupViewController.popoverPresentationController; 
    categoryPopupViewController.preferredContentSize = CGSizeMake(138, 122); 
    popOverCat.delegate = self; 
    popOverCat.sourceView = sender; 
    popOverCat.sourceRect = sender.bounds; 
    popOverCat.permittedArrowDirections = UIPopoverArrowDirectionAny; 
    [self presentViewController:categoryPopupViewController animated:YES completion:nil]; 
} 

Я сделал свой CategoryPopup в свободной форме в xib, а также я реализую ниже метод делегата

-(UIModalPresentationStyle) adaptivePresentationStyleForPresentationController: (UIPresentationController *) controller 
{ 
    return UIModalPresentationNone; 
} 

Но это не придумало, как всплывающее окно, а речь идет о полноэкранном режиме, есть обходной путь ?

+0

Вам нужно реализовать свой собственный' UIPresentationController'. Стандартный 'UIPopoverPresentationController' представляет popover на iPhone только в полноэкранном режиме. –

ответ

0

Вы забыли только один параметр, добавьте сразу после инициализации categoryPopupViewController «s:

categoryPopupViewController.modalPresentationStyle = UIModalPresentationPopover; 
Смежные вопросы