SWIFT UINavigationController嵌入在一个容器视图
问题描述:
我有一个ViewController里面的UIContainerView,它将被显示为一个popoverViewController。 在containerView中嵌入了一个UINavigationViewController。 在导航视图中嵌入了tableViewController,它在单元格选择上执行segue。SWIFT UINavigationController嵌入在一个容器视图
当用户从设置表视图控制器我的课程点击了(主型材 - 视图 - 控制器)的委托方法被调用来更新popoverViewController的preferredContentSize。 并且当UITableviewcontroller上的自定义backButton(<)时,popoverView将再次更改大小。我设法通过代理 得到它所有的工作,但据说它只能工作一次...从设置表视图控制器的委托方法不会被调用了。 我认为设置视图控制器自行执行segue后,主配置文件视图控制器的代理会丢失,并且不会再次调用。
这是它的外观在运行时
现在我的会话,并返回到原始大小的点击尺寸改变用户点击后退按钮后
但之后代理方法不会被调用,并且视图不会像这样改变大小
我正在使用SWIFT 2.0和Xcode 7.01关于如何保留委托方法的任何解决方案将非常感激。
答
好吧,所以我解决了它没有使用代表方法。 当提出一个应该改变屏幕尺寸视图控制器我使用
func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
presentingViewController?.preferedContentSize.width = 500
}
,我扭转它在viewWillDisappear
我希望它能帮助