Если вы хотите, чтобы определить ваши Автокомпоновка верхние ограничения полей в файле XIb, вы можете добавить следующий код в файл класса родственника ViewController к вашему XIb:
override func viewDidLoad() {
super.viewDidLoad()
if self.respondsToSelector("edgesForExtendedLayout") {
edgesForExtendedLayout = UIRectEdge.None
}
}
Simple. Но проблема в том, что вы не сможете получить полупрозрачную навигационную панель.
К счастью, есть несколько альтернатив этому. Вы можете определить верхнюю марку вашего автомата как относительно вашего руководства по макету (не для вашего вида) с помощью раскадровки или с кодом.
Если вы переместитесь на Раскадровка, нажмите на кнопку Pin, выберите ограничение верхнего края и выберите «Руководство по верхней макете» (см. Рисунок ниже).
Если вы решили определить все ограничения ваших UIButton
«S с кодом, вы можете использовать Визуальный формат Язык, как показано в следующем коде:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
var button = UIButton()
button.backgroundColor = UIColor.blueColor()
button.setTranslatesAutoresizingMaskIntoConstraints(false)
view.addSubview(button)
var viewsDict = ["button" : button, "topLayoutGuide" : topLayoutGuide]
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:[topLayoutGuide]-20-[button]", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict))
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|-20-[button]-20-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict))
}
}
Наконец, есть четвертый (вид смешанного) способа выполнить то, что вы хотите сделать. Установите ограничения в вашем XIb, перетащите верхнее поле ограничение и ваш UIButton
на ваш взгляд класс контроллера (имя их topConstraint
и button
) и установить свой код, как:
import UIKit
class ViewControllerTwo: UIViewController {
@IBOutlet weak var topConstraint: NSLayoutConstraint!
@IBOutlet weak var button: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
view.addConstraint(NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Top, relatedBy: NSLayoutRelation.Equal, toItem: self.topLayoutGuide, attribute: NSLayoutAttribute.Bottom, multiplier: 1, constant: 10))
view.removeConstraint(topConstraint)
}
}
каков значение мультипликатора вашего ограничения? – deimus
Значение множителя равно 1. – Isuru
Truy, чтобы установить его на ноль – deimus