ios - 使用 ContainerView 显示 UIViewController,其中自定义 Header 保持可见
问题描述
我正在使用父子视图方法。到目前为止,我能够显示我的子视图控制器的唯一方法是将它嵌套在我的警报控制器操作之一中。
func alertController() {
let heading = UIAlertAction(title: "Heading", style: .default, handler: {(action) -> Void in let child = SceneSetupVC(); self.show(child, sender: self); print("Heading selected")
})
alertController.addAction(heading)
我在 viewDidAppear 方法中添加了子视图,如下所示:
override func viewDidAppear(_ animated: Bool) {
alertController()
let parent = SceneSetupParentVC()
let child = SceneSetupVC()
parent.view.addSubview(child.view)
parent.addChild(child)
child.didMove(toParent: parent)
child.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
}
问题是当我从警报控制器中选择“标题”操作时,下一个视图确实会出现,但它完全覆盖了我的自定义标题,这甚至违背了拥有它的目的。我认为这可能是我通过使用“显示”来呈现视图控制器的方式,并且这样做是因为缺乏更好的术语而不是在我的容器视图所在的空白区域中推动视图“模态”。
解决方案
推荐阅读
- java - 模拟静态方法在较新的 mockito-core 版本中不起作用
- mysql - 如果满足条件则更新行,否则不更新列
- javascript - 用JS添加'onclick'时如何传递变量
- javascript - 从 JQuery 函数获取数组到后面的 C# 代码
- project-reactor - Spring Data Elasticsearch 是否支持响应式模型?
- python - typeError 帮助,plt.scatter 将我的 .csv 读取为真/假而不是数值
- javascript - 有没有办法在给定参考数组的情况下映射对象数组?
- java - Wildfly 10 中未找到 Stateless Bean 中的 JNDI
- apscheduler - re_schedule() 抛出 id not found 错误
- java - 选项卡 > 具有不同布局 + 操作的片段