2016-05-13 4 views
0

にもかかわらず、高1行になりたいここで私は(Xcodeの7.3で)何をすべきかです:ラッピングテキストフィールドが制約

  • 新しいビューXIBファイルを作成します
  • ドラッグ「折り返しのあるテキストフィールド」ビュー
  • は、標準の20個のピクセル離れ、親ビュー
  • オープンの各側面からピニングツール(「新しい制約を追加」)も、各辺
  • のための制約を追加するためにすべての4つの赤いIビーム形状をクリックしてサイズを変更します
  • 「4つの制約を追加」をクリックします。

テキストフィールドはオレンジ色で輪郭を描くようになり、オレンジ色の点線は1行(22ピクセル)の高さになります。

[制約の更新]をクリックしても何も行われません。 [フレームの更新]をクリックすると、22ピクセルの高さに縮小されますが、現在は上端の制約に違反しているため、まだオレンジ色です。

なぜその高さになりたいですか? "ラッピングテキストフィールド"を選択するという点は、それが複数の行以上になることです。

答えて

0

ラッピングラベルは、テキストの量に基づいて固有のコンテンツサイズを決定します。あなたのプレースホルダーの文字列が "Label"である場合、autolayoutはそれに与えるスペースの量に関係なく1行分のスペースを与えます。

ラベルをラッピングしてautolayoutを使用する正しい方法は、固定されたボトムコンストレインを与えず、代わりにそれ以上の大きさを与えることです。 "V:| 5- [ラッピングラベル] - > = 5 |" VSLで次に、ラベルのstringValueを設定すると、下限制約が上向きになると、ラベル自体を展開することができます。

+0

1.これはテキストフィールド用であり、ユーザー入力用であり、テキストラベル用ではありません。同じことが当てはまりますか?私はそれを期待していないでしょう。 2.ラベルの場合でも、Interface Builderでこれを実現する方法はありませんか?私は古い竿と泉に戻りたいと思う。 – Uncommon

+0

1.はい。いずれの場合も、ラベルはNSTextFieldsです。 2. IBでは、これをボトム拘束に設定し、リレーションをそれ以上に変更します –