我有一个UISplitViewController
子类,它实现UISplitViewControllerDelegate
和UIPopoverController
委托钩子,当主窗格弹出窗口通过以下方式呈现或关闭时得到通知:
splitViewController:popoverController:willPresentViewController:
popoverControllerShouldDismissPopover:
此拆分视图控制器已presentsWithGesture
设置为YES
.
调用 1. 时,我确保将弹出框的委托(方法调用中的第二个参数)设置为self
.
什么有效:
- 在主窗格可见的情况下,当我在主窗格外部点击时,将调用应该解除挂钩
- 在隐藏主窗格的情况下,当我点击导航栏按钮以显示主窗格时,将调用将显示挂钩
- 隐藏主窗格后,当我从左向右滑动以显示主窗格时,将调用将显示挂钩
什么不起作用:
- 在主窗格可见的情况下,当我从右向左滑动以隐藏主窗格时,不会调用任何委托挂钩
我很确定所有代表都已正确设置。
在调试器中,我获取了 popover 控制器的内存引用(它始终相同),从右向左滑动后,我确认它的委托仍然正确设置——只是没有调用方法。
设置有什么问题还是这是 UIKit 错误/疏忽?