私は次のことを達成しようとしています:
- xibに2つのビューがあり、エッジ(側面と上面の両方)から20ピクセル離れている必要があります
- サイズを変更する必要がある2つのビューは同じサイズではありません
- それらは20ピクセル離れている必要があります
- それらの幅は、親ビューの幅に対して一定である必要があります
Widths equally
私はそれを行うことについてのチュートリアルを読みました、そしてそれはうまくいきます、しかしそれに関する問題はそれが私が望まない同じ幅とピンを持つ両方のビューを必要とするということです。
これが私が試したことです:
- 左側のビューに先頭のスペース制約を追加して20ピクセルにします
- 左側のビューに上部スペースの制約を追加して20ピクセルにします
- 右側のビューに上部スペースの制約を追加して20ピクセルにします
- 右側のビューにテーリングスペースの制約を追加して、20ピクセルにします
- 両方のビューに水平方向の間隔の制約を追加して20ピクセルにします
私が遭遇している問題は、左側のビューのサイズが変更されず、右側のビューがスペースを埋めて20ピクセルの水平方向のスペースを維持することです。
両方のビューを、埋める必要のあるスペースに比例してサイズ変更する方法はありますか?
これが私のレイアウトと制約のスクリーンショットです:
ありがとう!
編集
デバイスを回転させようとすると、次の警告が表示されます。
2012-10-11 08:59:00.435 AutolayoutTest[35672:c07] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this: (1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it. (Note:
If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSLayoutConstraint:0x8a6b2b0 H:[UIView:0x8a6b1d0(170)]>",
"<NSLayoutConstraint:0x8a68ad0 H:[UIView:0x8a69430(90)]>",
"<NSLayoutConstraint:0x8a6ba40 H:[UIView:0x8a69430]-(20)-[UIView:0x8a6b1d0]>",
"<NSLayoutConstraint:0x8a6ba00 H:[UIView:0x8a6b1d0]-(20)-| (Names: '|':UIView:0x8a6b7e0 )>",
"<NSLayoutConstraint:0x8a6b940 H:|-(20)-[UIView:0x8a69430] (Names: '|':UIView:0x8a6b7e0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x7199aa0 h=--& v=--& V:[UIView:0x8a6b7e0(568)]>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x8a6b2b0 H:[UIView:0x8a6b1d0(170)]>