2016-04-12 4 views
0

Я добавляю приглашение на покупку полной версии приложения, отображая uiview для пользователя; тем не менее, у меня есть проблемы с ограничениями настроек программно, так как у меня нет проблемы, показанной на рисунке ниже на iPhone 6 plus.ios swift - автоматический макет программно для subview

Я делаю:

let purchasePopUp = PromptPurchase.instanceFromNib() as! PromptPurchase 
      //purchasePopUp.frame = UIScreen.mainScreen().bounds 


      purchasePopUp.translatesAutoresizingMaskIntoConstraints = false 

      // let leadingConstraint = NSLayoutConstraint(item: purchasePopUp, attribute: .Leading, relatedBy: .Equal, toItem: view, attribute: .Leading, multiplier: 1, constant: 0) 
      let trailingConstraint = NSLayoutConstraint(item: purchasePopUp, attribute: .Trailing, relatedBy: .Equal, toItem: view, attribute: .Trailing, multiplier: 1, constant: 0) 
      // let topConstraint = NSLayoutConstraint(item: purchasePopUp, attribute: .Top, relatedBy: .Equal, toItem: view, attribute: .Top, multiplier: 1, constant: 0) 
      let bottomConstraint = NSLayoutConstraint(item: purchasePopUp, attribute: .Bottom, relatedBy: .Equal, toItem: view, attribute: .Bottom, multiplier: 1, constant: 0) 
      //view.addConstraints([leadingConstraint, trailingConstraint, topConstraint, bottomConstraint]) 
      view.addConstraints([trailingConstraint, bottomConstraint]) 

      view.addSubview(purchasePopUp) 

И это еще только занимает то же пространство.

Спасибо

enter image description here

+0

Это не очевидно, что ваш вопрос, но Предполагаю, что вы хотите, чтобы представление заполнило область родительского представления. Во-первых, это ограничения. Я не помню, были ли они по умолчанию. Поэтому проверьте это. Во-вторых, для простоты я бы рекомендовал переключиться на язык визуального формата или на новые якоря iOS8 в качестве метода определения ограничений. Я нашел якоря, чтобы быть действительно простым способом их выполнения. Просто не забудьте активировать их. – drekka

+0

Правильно, я хочу, чтобы представление заполнило область родительского представления. По умолчанию активные ограничения. Я немедленно загляну в якорь. Спасибо за ваш вклад – Walking

ответ

0

С EasyPeasy ваш код будет выглядеть так, дайте ему попробовать :)

import EasyPeasy 

if let purchasePopUp = PromptPurchase.instanceFromNib() as? PromptPurchase { 
    view.addSubview(purchasePopUp) 
    purchasePopUp <- Edges() 
} 

https://github.com/nakiostudio/EasyPeasy

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