2016-04-17 14 views
9

Tôi tạo UIStackView s theo lập trình và thêm chúng vào parent UIStackView, được tạo trong Storyboard. Chế độ xem ngăn xếp con là ngang với 2 nhãn. Tôi cần phải sửa chiều rộng của UILabel thứ hai và làm cho không gian còn lại UILabel đầu tiên.Sửa chiều rộng của phần tử trong UIStackView

Bây giờ tôi có điều này:

Before

Và tôi muốn điều này:

After

Mã của tôi để tạo ra con chồng lần xem:

@IBOutlet weak var parentStackView: UIStackView! 

func addStackViewsToParentStackView(params: [String: Float]) { 
    for (name, value) in params { 
     let parameterNameLabel = UILabel() // first label 
     parameterNameLabel.text = name 
     let parameterValueLabel = UILabel() // second label 
     parameterValueLabel.text = value.description 
     parameterValueLabel.frame.size.width = 80.0 // I've tried to fix width, but it does't help 

     let childStackView = UIStackView(arrangedSubviews: [parameterNameLabel, parameterValueLabel]) 
     childStackView.axis = .Horizontal 
     childStackView.distribution = .FillProportionally 
     childStackView.alignment = .Fill 
     childStackView.spacing = 5 
     childStackView.translatesAutoresizingMaskIntoConstraints = true 
     parentStackView.addArrangedSubview(childStackView) 
    } 
} 

Thanks cho bất kỳ Cứu giúp!

Trả lời

13

Chỉ cần đặt các giới hạn về chiều rộng trên nhãn.

parameterValueLabel.widthAnchor.constraint(equalToConstant: 80).isActive = true 
Các vấn đề liên quan