【发布时间】:2017-05-06 03:52:42
【问题描述】:
请帮助解决这个问题。 我有一个带有两个容器视图的视图控制器,每个视图都指向一个单独的视图控制器。
第一个视图控制器应该显示图像,但顶部被导航栏截断。
我已取消选中“在顶部边缘下延伸”。
两个容器视图的视图控制器几乎是空的。
有什么想法吗?
class ViewController: UIViewController {
var teamMember:TeamMember!
override func viewDidLoad() {
super.viewDidLoad()
if let name = teamMember.firstName {
title = name
}
navigationController?.view.setNeedsLayout()
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if (segue.identifier == "PictureViewController") {
var destination = segue.destination as? UINavigationController
var vc = destination?.topViewController as? PictureViewController
vc?.teamMember = teamMember
}
if (segue.identifier == "BioContentViewController") {
var vc = segue.destination as? BioContentViewController
vc?.teamMember = teamMember
}
}
编辑:我也在设置自定义导航栏项目,我不知道这是否会导致问题
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if (segue.identifier == "PictureViewController") {
let backItem = UIBarButtonItem()
backItem.title = "Meet The Team"
navigationItem.backBarButtonItem = backItem
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if (segue.identifier == "teamMemberDetailView") {
let backItem = UIBarButtonItem()
backItem.title = "Meet The Team"
navigationItem.backBarButtonItem = backItem
var vc = segue.destination as? TeamMemberDetailViewController
vc?.teamMember = teamArray[selectedTeamMemberIndex]
}
}
【问题讨论】:
-
您对
UIImageView使用了哪些约束?它是否与topLayoutGuide绑定? -
在
viewDidAppear中,您能否打印缺失视图的帧。这将有助于调试问题 -
@ScottThompson 没有限制..
-
@ScottThompson 好的,我添加了约束:UIimageView 到顶部布局指南,大小 = 0.. 但没有区别
-
我得到它半工作的一种方法是将顶部空间设置为顶部布局指南 = 100
标签: ios swift uicontainerview