0
我們假設CustomView's
大小爲300x300。 iconImageView
有它的大小和分配的約束。我不知道要在UILabel
多久才能成爲文字,所以我不想讓大小不一的UILabel
。我的目標是將左側約束固定在iconImageView
的右側,並且右側固定到customView
。用SnapKit自動調整UILabel
override func updateConstraints() {
super.updateConstraints()
iconImageView.snp.updateConstraints { (make) in
make.left.equalTo(customView).offset(10)
make.centerY.equalTo(customView)
make.size.equalTo(CGSize(width: 40.0, height: 40.0))
}
nameLabel.snp.updateConstraints { (make) in
make.right.equalTo(customView).offset(-10)
make.left.equalTo(iconImageView.snp.right).offset(10)
make.centerY.equalTo(customView)
}
}
當我試試這個方法,我得到錯誤:Unable to simultaneously satisfy constraints.
怎樣做這一個適當的方式?
hmmm ...我剛試過你的代碼,它工作正常。我假設這個代碼是在'UIView'子類中? *該*視圖相對於其SuperView有適當的約束?而'customView'有適當的限制,使其300x300和位於該視圖內? – DonMag
此代碼位於UIView子類中,並且相對於超級視圖具有適當的約束。當我滑動到另一個ViewController時出錯,因爲這個視圖是UIPageViewController的一部分。 – Billy
嗯......猜猜我們需要更多關於何時出現錯誤的信息。不過,您應該首先閱讀有關在此處重寫'updateConstraints()'的討論(它可能只是爲您提供所需的信息):https://developer.apple.com/reference/uikit/uiview/1622512 -updateconstraints – DonMag