問題タブ [visual-format-language]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 自動レイアウトを使用してUIView内に動的に追加されたUILabelsをプログラムで配置します
の中に表示するアイテムの配列がありますUITableViewCell
。これらの各アイテムは、 を使用して動的に表示されますUILabel
。ビューのレイアウトをセットアップするために autolayout を使用します。
これが私のレイアウト方法ですtableViewCell
:
明確にするために
otherView
: 中に 2 つUILabel
入っています。高さ固定。itemView
:内部のitemLabel
&の数が不明です。priceLabel
の数に基づいて高さを変更しitems
ます。itemLabel
ビューの各制約は、 &を除いてストーリーボードを使用して設定されますpriceLabel
。
私の中で、私は&を使用して制約をcellForRowAtIndexPath
設定しますitemLabel
priceLabel
constraintsWithVisualFormat:
最終的な結果は以下のとおりです。唯一の問題は、itemLabel
作成された とpriceLabel
が上から下にうまく整列するのではなく、互いに重なり合っていることです。
itemLabel
&priceLabel
が上から下にうまく整列itemView
し、その中のアイテムの数に基づいてサイズが変更されるように、制約を適切に設定するにはどうすればよいですか?
ios - Autolayout を使用する場合、どこにサブビューを手動で追加する必要がありますか?
どこでも AutoLayout を使い始めようとしています。フレームを使用した非常に単純なシナリオがありますが、Autolayout を使用して機能させることはできません。
ライブラリに属しているため、触れられない StoryBoard があります。ストーリーボードに関連する ViewController が読み込まれると、プログラムで View を追加したいと考えています。そこで、 で を作成し、UIView
高viewDidLoad
さと幅の制約と、それらを配置するための他の 2 つの制約を追加しました。すべてがうまくいきましたが、幅は他のビューと同じ幅にしたいです。どうすればいいですか?
「他のビュー」のサイズを に記録しましたがviewDidLoad
、サイズが正しくありません。 も記録しましたがself.view.frame.size.width
、どちらも正しくありません。
まで正しいサイズが設定されていないことを読んだviewDidLayoutSubviews
ので、そこにコードを追加しようとしましたがviewDidLayoutSubviews
、決して終わらない呼び出しのループに入ります。私は何を間違っていますか?
autolayout - 制約を破るのはなぜですか?
私はビジュアル フォーマット言語について学習しようとしていますが、自動レイアウトの制約を破る文字列が得られることを理解しようとしています。
そして、これらは最初に壊れた制約であり、さらに...
なぜ彼らが壊れているのかわかりません。単純なことのように思えますが、ここで何かが欠けていますか? (明らかに私はそうです)このアプリは横向きで、まったく役に立ちます。
ios - ラベルやボタンがテキスト フィールドのスペースを占有するのを防ぐために、コンテンツをハグする必要があるのはいつですか?
プログラムで作成された単純なレイアウトに戸惑っています。ここでは、制約を使用して 、a UILabel
、 a が並んでいます。以下の動作を理解していただければ幸いです。UITextField
UIButton
ビジュアル フォーマット言語を使用して、これらのビューを次のようにレイアウトすると...
...次のように、ラベルができるだけ多くのスペースを取りたいと考えていることがわかります。
しかし、式からラベルを削除すると...
...次に、スペースを引き継ぎたいのはボタンです。
ラベルとボタンに「ハグの優先度を高く」設定することで、サイズを制御できます (本来のサイズを維持していると思います)。しかし、これらの場合の動作の違いの理由はわかりません。
ここで autolayout が正確にどのように機能しているか知っていますか?
関連する質問:
ios - NSLayoutRelationConstraint から Visual 形式の制約へ
リレーショナル制約をビジュアル形式に変換しようとしています。サブビューは、スーパー ビューと同じ幅と高さです。
これが私のコードです:
これを視覚的な形式に変換するにはどうすればよいですか?