私は次のような構成でUIStackViewを使用しています:UIStackView自身intrinsicContentSize
let contentView = UIStackView()
contentView.distribution = .EqualSpacing
contentView.alignment = .Center
contentView.spacing = horizontalSpacing
の各要素は、それがUIStackView
はintrinsicContentSize
、独自に提供するので、それは可能なはずintrinsicContentSize
自分のしています。ドキュメントには、最小間隔としてspacing
が使用されていると記載されています。
例:
view1: width=10
view2: width=15
spacing = 5
[view1(10)]-5-[view2(15)]
stackViewのintrinsicContentSize.width
は30
であるべきです。
代わりに私が取得:intrinsicContentSize
が提供できないことを私に伝えます
▿ CGSize
- width : -1.0
- height : -1.0 { ... }
。
私が何か間違っているかどうか、動作が意図されているか、これがバグかどうかを知っている人はいますか?
私はすべて私のものをstackviewの中に入れて、このスタックビューをスーパービューに追加するとします。しかし、私はまだ私のsuperViewに別のビュー(実際に私はviewControllerのビューを持っている)があります。どのようにこれらの2つをお互いに制約するので、stackviewはその固有のサイズを取り、残りをchildVCのままにしますか? – Honey
自分のトップレベルの質問を投稿する必要があるように思えます。 –
あなたは正しいです。私はちょうど大まかなアイディアを得ようとしています。 2行の応答のように。また、私が質問を投稿しなかったのは、これが私のPlanBだからです...私のplanAは私に失敗していますが、私のコーディング帯域幅もすべて取っているので、何をする必要があるのか概算したいだけです。あなたは私に2行の応答を与えることができますか? :/それ以上のことは何でも質問します。 – Honey