3

Я создал 2 ViewControllers, один называется ViewController, а другой catViewController со своим собственным классом.
В окне ViewController, когда я нажимаю кнопку «Category» в barbutton, я вызываю catViewController со стилем Popover со стрелкой, указывающей на кнопку Category.Отклонить Popover с кнопкой Готово или Отменить на Popover

catViewController содержит вид коллекции и ячейки. Если я выхожу за пределы popover или на кнопке «Категория», это не будет устранено. Но я пытаюсь уволить его с помощью кнопки «сделать» или «отменить» прямо на барбекю внутри popover, он не будет уволен.

Я использую [self.catPopoverController dismissPopoverAnimated:YES]; Он выделен и создан в ViewController с использованием идентификатора раскадровки, и я пытаюсь его отклонить в catViewController.

Как передать или использовать ссылочный указатель ViewController от или до catViewController, чтобы я мог контролировать его.

ответ

3

Создайте объект в контроллере просмотра контента popover. Как это

@property (nonatomic, assign) UIPopoverController *popOverController; 

и присвоить это свойство, когда вы показываете пирог

ViewController2 *objContentViewController = [[ViewController2 alloc] init]; 
popOver = [[UIPopoverController alloc] initWithContentViewController:objContentViewController]; 
objContentViewController.popOverController = popOver; 

А затем вызвать ниже заявление от вашего бара метода нажатия кнопки ...

[self.popOverController dismissPopoverAnimated:TRUE]; 
+0

Я хотел бы предложить использовать свойство «слабый», чтобы избежать циклических ссылок. – Flovdis

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