2016-11-07 13 views
1

NSLayoutConstraint withVisualFormatを初めて使用しています。ラベルを右隅に配置する必要があります。しかし、制約のために、私はそれを左に配置しました。コードと画像のサンプルを見つけてください。もう1つはラベルが左右の8ピクセルになるようにしてください。より多くのテキストがある場合は、展開する必要もあります。問題の位置UILabelが右の場合NSLayoutConstraint withVisualFormat

let views : [String : Any] = ["title" : articleTitleLabel, "body" : articleDescriptionLabel, "image" : articleImageView ,"footer" : articleAuthorLabel] 

    let widthConstraints = NSLayoutConstraint.constraints(withVisualFormat: "H:|-5-[image(130)]-5-[title]-5-|", 
                  options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views) 
    let widthConstraints1 = NSLayoutConstraint.constraints(withVisualFormat: "H:|-5-[image]-5-[body]-5-|", 
                  options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views) 

    let heightConstraints = NSLayoutConstraint.constraints(withVisualFormat: "V:|-5-[title]-5-[body]-5-[footer]-(>=5)-|", 
                  options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views) 

    let heightConstraints1 = NSLayoutConstraint.constraints(withVisualFormat: "V:|-5-[image(130)]-(>=5)-|", 
                  options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views) 


    NSLayoutConstraint.activate(widthConstraints) 
    NSLayoutConstraint.activate(heightConstraints) 
    NSLayoutConstraint.activate(widthConstraints1) 
    NSLayoutConstraint.activate(heightConstraints1) 

スクリーンショット:

enter image description here

答えて

0

右下隅にごarticleAuthorLabelを配置し、あなたはそれにいくつかの水平方向の制約を追加する必要があります。

このお試しください:ラベルは左側を押しのけていない、あなたが使用できることを確認するために

let authorConstraints = NSLayoutConstraint.constraints(withVisualFormat: "H:[footer]-5-|", 
                 options: NSLayoutFormatOptions(rawValue: 0), 
                 metrics: nil, views: views) 
NSLayoutConstraint.activate(authorConstraints) 

を:

"H:|-(>=5)-[footer]-5-|" 

そして、あなたのコンテンツのハグの優先順位はに十分な大きさであることを確認してください

これを行うと、テキストを右揃えにすることができます。

"H:|-5-[footer]-5-|" 
+0

試してみてください。働いていない。私の質問は右隅に配置することです。今すぐ左隅に位置しています – Vinodh

+0

申し訳ありませんが、私の編集を参照してください。 – stevekohls

+0

@Vinodhあなたはそれを働かせることができましたか? – stevekohls

関連する問題