【发布时间】:2017-08-21 09:02:13
【问题描述】:
当应用启动时,我使用这个方法来设置根视图控制器。
func showRootViewController() {
let sb = UIStoryboard.init(name: "Main", bundle: nil)
let mainViewController = sb.instantiateInitialViewController()!
self.window?.rootViewController = mainViewController
self.window?.makeKeyAndVisible()
}
在主视图控制器中,我有代码将视图设置为容器视图
class MainViewController: UIViewController {
@IBOutlet weak var headerView: UIView!
@IBOutlet weak var containerView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if(userManager.hasRegistered()) {
let sb = UIStoryboard.init(name: "Login", bundle: nil)
self.setContentViewController(sb.instantiateInitialViewController()!)
} else {
let sb = UIStoryboard.init(name: "Registration", bundle: nil)
self.setContentViewController(sb.instantiateInitialViewController()!)
}
}
func setContentViewController(_ contentViewController: UIViewController) {
print(self.containerView.frame)
let contentView = contentViewController.view!
contentView.frame = self.containerView.bounds
self.containerView.addSubview(contentView)
}
}
让我们看看视图,我有容器视图是用来添加子视图的。我设置了背景帮助大家解决容器视图的框架
子视图设计如下:
结果并不如我所料。 ContainerView 已经去了某个地方(我真的不知道),子视图在顶部移动。
请帮帮我。
【问题讨论】:
标签: ios objective-c iphone swift3