请帮忙解决这个问题。 我有一个viewcontroller与两个容器视图,每个指向一个单独的视图控制器。如何防止imageView在ContainerView中的导航栏下延伸
第一个viewcontroller应该显示一个图像,但顶部被导航栏截断。
我没有选中“延伸到顶部边缘”。
我的两个容器视图的viewcontrollers几乎是空的。
任何想法?
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'中可以打印缺失视图的帧。这将有助于调试 – user1046037
@ScottThompson没有约束的问题.. – makthrow