2016-05-10 84 views
0

編集の大きさに縮小する原因:私は、正しい解決策を見つけたと私はテキストフィールドを持って質問NStextfieldに最近傍の制約を追加することは、テキスト

の下部にそれが含まれます。私はテキストフィールドを最近の隣に制限しています。この場合はビューです。これを行うと、テキストフィールドの高さがコントロールから外れて、テキストのサイズが正確に一致します。テキストボックスを自動的にサイズ変更せずに、テキストボックスを最近隣に拘束する方法を教えてください。下の図は、自分の制約と、テキストフィールドのサイズを変更したいと考えるオレンジ色の輪郭を示すイメージです。また、ビューは、テキストボックスのサイズと同様に予想される高さ62に縮小することも示しています。

image adding simple contraints causing the textfield to resize to a new height indicated by the dashed yellow line

私は私がインスペクタで制約をチェックすると、私は、テキストボックスは常に最初の項目に設定されていなかったことがわかっていること、追加します。テキストボックスをすべての制約の最初の項目にすると、幅が編集可能になりました。

回答:

1)秘密、それは優先度の低い例えばなどのコンテンツハグを置くために、テキストボックスに制約を追加します。上記の画像を見ると、垂直に抱擁するコンテンツは750または高い優先度で、水平に抱擁するコンテンツは低優先度(= 250)にあります。したがって、私は、優先度が低いが最も優先度の高い高さではないため、最近隣に制約することができます。詳細について は、各制約は、インスペクタの第一及び第二の項目を有している)、このドキュメントhttps://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/WorkingwithConstraintsinInterfaceBuidler.html#//apple_ref/doc/uid/TP40010853-CH10-SW2

をチェックします。 2番目の項目は、その属性(例えば、サイズ)を最初の項目から取得します。

+1

高さに関連して互いに矛盾する他の制約もあるようです。そこで、既存の制約を削除し、垂直方向と水平方向の中心制約を追加することを提案します。 –

+0

これは良いアドバイスです。出来た。私はテキストボックスのサイズを変更することができませんでしたが、私は正しい位置にそれを得ることができました。 – jiminybob99

+0

テキストボックスのサイズを変更する方法を教えてください。それがあなたを助けるなら、私はあなたに私の答えを受け入れるようお願いしたい、ありがとう:) –

答えて

0

既存の制約を削除し、垂直方向と水平方向の中心制約を追加することを提案します。

1

レイアウトエンジンは親ビュー(ここではビューコントローラ)のサイズを知りませんので、本来の内容を取りますテキストフィールドのサイズ

テキストフィールドを必要なだけ正確にしますか?それに触れないで、あなたのテキストフィールドはテキストを含むようにリサイズされ、制約を使ってそれ自身を配置します。

ビューコントローラに一定のサイズを設定しますか? (たとえば、特定の背景イメージを収めたい場合)親ビューに制約を追加して、特定のサイズまたはアスペクト比を維持することを検討したい場合があります。

関連する問題