как закрыть существующий поповер и показать другой поповер одним касанием в ipad - PullRequest
1 голос
/ 25 августа 2010

У меня UItableView с большим количеством ячеек.Каждая ячейка связана с различными видами всплывающих окон.Когда я коснусь ячейки, появится всплывающее окно.Когда я касаюсь другой ячейки табличного представления, я хочу отклонить существующий поповер и мне нужно показать поповер, соответствующий выбранной ячейке.

Но, когда я касаюсь области за пределами поповера, существующий поповер отклоняется, но я не могу получить индекс ячейки, который я выбрал.Есть ли способ отменить существующий поповер и показать другой поповер одним касанием в ipad?

Ответы [ 2 ]

4 голосов
/ 17 ноября 2010

Решил проблему

У меня есть решение, установив passthroughView всплывающего окна в качестве табличного представления, в котором я хочу отобразить всплывающее окно.

0 голосов
/ 15 ноября 2013

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

У меня есть SplitViewController, который показывает SettingsViewController в popoverController и может отображать LoginViewController в том же всплывающем окне, когда пользователь нажимает кнопку в SettingsViewController.

Этот метод находится в SplitViewController:

- (void)showLoginViewController
{
  if ( ! _myPopoverController.isPopoverVisible) {
    _myPopoverController = [[UIPopoverController alloc] initWithContentViewController:self.loginViewController];
    [_myPopoverController presentPopoverFromRect:popoverOriginRect inView:self.view permittedArrowDirections:0 animated:YES];
  }
  else {
    [_myPopoverController setContentViewController:self.loginViewController animated:YES];
  }
}

У меня есть свойство в SplitViewController:

@property (nonatomic, strong) UIPopoverController *myPopoverController;

Важно не создавать новый экземпляр _myPopoverController, а установить ContentViewController в старом экземпляре.Рекомендуется хранить PopoverController в сильном свойстве, поскольку его нельзя освобождать, пока он виден.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...