在其他视图前面添加来自xib的视图

时间:2016-06-20 11:03:33

标签: ios swift

我尝试在其他视图前面的xib中添加自定义视图。但是,出于某种原因,当屏幕上显示UITableView时,它从未被放置为前视图。这是我的代码:

noInternetView = NSBundle.mainBundle().loadNibNamed("NoInternetView", owner: self, options: nil)[0] as! NoInternetView
noInternetView.translatesAutoresizingMaskIntoConstraints = false
noInternetView.delegate = self

self.view.addSubview(noInternetView)
self.view.addConstraint(NSLayoutConstraint(item: noInternetView, attribute: .CenterX, relatedBy: .Equal, toItem: self.view, attribute: .CenterX, multiplier: 1, constant: 0))
self.view.addConstraint(NSLayoutConstraint(item: noInternetView, attribute: .CenterY, relatedBy: .Equal, toItem: self.view, attribute: .CenterY, multiplier: 1, constant: 0))

我把它放在viewDidLoad()代码的底部。为什么会这样?

4 个答案:

答案 0 :(得分:0)

noInternetView.hidden = true

您的视图已隐藏,可见

noInternetView.hidden = false

答案 1 :(得分:0)

self.view.bringSubviewToFront(noInternetView)

试试这可能对你有帮助。

答案 2 :(得分:0)

第一

检查noInternetView是否有宽度和高度限制

第二

self.view.layoutIfNeeded()

之后添加self.view.addConstraint

这有助于调整您添加的自动布局

答案 3 :(得分:0)

如果您希望自己的视图位于顶部,请将其添加到窗口中。