なぜこれが起こっているのか分かりませんが、基本的にはUITextField
で構成されるスタティックセルがあります。 inputView
はUIPickerView
であり、そのinputAccessoryType
はUIToolBar
です。resignFirstResponderが呼び出されるまで、UITextFieldは内容に合わせて自動的に幅のサイズを変更しませんか?
私はそうのようにそれを作成しました:
そして、これは、それがストーリーボードに設定されている方法です。
のViewControllerが最初にロードされると、textField.text
値はんですサイクルですが、これは問題ありません。私はすなわち半月刊、2行目を選択しUIPickerView
をスクロールするときただし、テキストはカットオフされますので、同じよう:
私はを呼び出すためにUIBarButtonItem
を完了打つまではそれがありません
私はかなりunderstanない:textField
の幅は自動的にそのような文字列半月間の内容に合わせてexandsことtextField.resignFirstResponder
なぜこれが起こっているのですか?
固定幅を設定すると、テキストフィールドはテキストの内容に基づいて自動的に幅を調整しません。テキストフィールドが必要でない場合は、幅の広い領域を占めることは望ましくありません。 Horizontal 'Hugging Priority'よりも幅の優先度を低く設定することがポイントだと思いましたか?私はセルの左端に 'UILabel'があるので、Auto-Layoutでこれを達成しようとしています。 – Pangu
また、最小のフォントスケールまたはサイズを設定することができます。テキストが大きい文字列の場合は、フォントサイズをラベルに合わせて縮小します。それはあなたのために適切な場合!あなたの質問に投稿したあなたの現在のアプローチの2番目のことは、あなたのdidselectrowメソッドでlayoutifneededまたはlayoutsubviewsを呼び出すことです。 – Lion
私の要件は、テキストが大きい文字列の場合は、フォントサイズを同じにして、縮尺しないことです。前述のように、私はこれが 'Hugging Priority'で世話をしたと考えました。 – Pangu