2016-04-26 2 views
2

Я учусь писать ограничения в VFL из кодаКак написать topLayoutGuide ограничения в VFL

Я сосредоточил свою точку зрения по горизонтали так:

let constraintY = NSLayoutConstraint.constraintsWithVisualFormat(
      "H:[superview]-(<=1)-[collaboratorView]", 
      options: NSLayoutFormatOptions.AlignAllCenterY, 
      metrics: nil, 
      views: ["superview":self.assetsView, "collaboratorView":collaboratorView]) 

но я интересно, как писать ограничение на topLayoutGuide , который выглядит в раскадровке как тот enter image description here

Я кончался с чем-то вроде этого, но его не работает; (

let bar = NSLayoutConstraint.constraintsWithVisualFormat(
      "V:|[collaboratorView]", 
      options: [NSLayoutFormatOptions.AlignAllTop], 
      metrics: nil, 
      views: ["collaboratorView":self.collaboratorView]) 

ответ

2

Вы можете определить, как показано ниже:

let views : [String : AnyObject] = ["collaboratorView": collaboratorView, 
    "topLayoutGuide": topLayoutGuide, 
    "bottomLayoutGuide": bottomLayoutGuide] 

// 2 
var allConstraints = [NSLayoutConstraint]() 

// 3 
let verticalConstraints = NSLayoutConstraint.constraintsWithVisualFormat(
    "V:[collaboratorView]-12-[topLayoutGuide]", 
    options: [], 
    metrics: nil, 
    views: views) 
allConstraints += verticalConstraints 
+0

спасибо большое, просто еще один вопрос Я всегда интересно, что если topLayoutGuide здесь: «topLayoutGuide»: topLayoutGuide, могли бы вы добавить реализацию на ваш ответ, пожалуйста? –

+0

Реализуйте его, и вы увидите, что это такое. Это определенное свойство в UIViewController, –

+0

oh, я пропустил, что я внутри UIView, ваш ответ в любом случае правильный;) –

Смежные вопросы