4

最初のラベルには幅が設定されていませんが、固有のコンテンツ サイズを使用し、2 番目のラベルは最初のラベルと同じ幅で、テキストを新しい行に折り返します。

理想的には、2 番目のラベルは0ダイナミック タイプで動作するように設定された数値行を持つべきですが2、当面は に設定し、特定の高さを指定しました。equal widthsそれでも、 または のいずれかを揃えようとするとtrailing、固有のコンテンツ サイズ ラベルが、すべてが 1 行にあるかのように、複数行のラベルの幅に拡張されます (下の図を参照)。

私が求めているもの: 私が求めている効果

私が見ているもの: 私が得ている効果

最初のラベルの幅を指定せずに、私が望むものを達成する方法はありますか? 動的なタイプを考慮してコンテンツを拡張し、2 番目のラベルの幅を同じにして、すべてのテキストを新しい行に折り返すようにしたいと考えています。

4

2 に答える 2

6

コードに何もフックしなくても実行できます。このソリューションの重要なポイントは、固有のコンテンツ サイズに完全に基づいてサイズが計算される、ラベルのコンテンツ ハグ優先度です。

本質的なコンテンツ サイズ ラベル

  • 水平方向のコンテンツのハグの優先度を必須 (1000) に設定します

マルチライン ラベル (lorem ipsum ラベル)

  • 先頭を本質的なコンテンツ サイズ ラベルに揃える
  • 末尾を本質的なコンテンツ サイズ ラベルに揃える


両方のラベルの Xcode 構成 (左: 組み込み、右: マルチラベル)

固有のコンテンツ サイズ ラベルの構成 マルチライン ラベルの構成

于 2017-10-18T22:43:36.863 に答える