Ios UIPopoverController用于动画结束的callbalck

Ios UIPopoverController用于动画结束的callbalck,ios,ipad,animation,uipopovercontroller,Ios,Ipad,Animation,Uipopovercontroller,UIPopoverController更改其大小,然后显示键盘,并将其更改回隐藏键盘以进行横向定位。我需要执行一些行动时,弹出恢复它的原始大小,所以我要在弹出调整动画结束回调 我已经尝试捕捉到键盘被隐藏的通知,但这并没有帮助-在键盘被隐藏后弹出窗口更改大小。我也试着 将“动画委托”设置为UIView,但看起来这仅适用于自定义动画 目前,我以performSelectorAfterDelay结束,它在UIKeyboardDidHideNotification的回调中调用,但这个解决方案看起来并不好

UIPopoverController更改其大小,然后显示键盘,并将其更改回隐藏键盘以进行横向定位。我需要执行一些行动时,弹出恢复它的原始大小,所以我要在弹出调整动画结束回调

我已经尝试捕捉到键盘被隐藏的通知,但这并没有帮助-在键盘被隐藏后弹出窗口更改大小。我也试着 将“动画委托”设置为UIView,但看起来这仅适用于自定义动画


目前,我以performSelectorAfterDelay结束,它在UIKeyboardDidHideNotification的回调中调用,但这个解决方案看起来并不好。是否有人可以为我指出另一种方法?

如果您为
UIPopoverController
提供自定义
UIView
,您可以覆盖
UIView
中的两个不同布局函数:
viewWillLayoutSubviews()
viewDidLayoutSubviews()

如果您使用的是默认视图,则可以利用KVO来侦听对视图
边界的更改


addObserver(popoverController.ContentViewController.view,forKeyPath:“bounds”,选项:NSKeyValueObservingOptions.New,context:nil)
如果您为
UIPopoverController
提供自定义的
UIView
,您可以在
UIView
中覆盖两个不同的布局函数
viewdilayoutsubviews()

如果您使用的是默认视图,则可以利用KVO来侦听对视图
边界的更改


addObserver(popoverController.contentViewControler.view,forKeyPath:“边界”,选项:NSKeyValueObservingOptions.New,context:nil)

谢谢!我遗漏了viewDidLayoutSubviews()将在完成视图动画到最终大小后调用。谢谢!我遗漏了viewDidLayoutSubviews()将在完成视图动画到最终大小后调用。