2017-10-11 7 views
1

私はアプリを開発中です。 xcodeのバージョンは9、iOSのバージョンは11です。このプロジェクトは客観的に行われています。ツールバーのフレキシブルな幅のテキストフィールドを設定する

私は、テキストフィールドとボタンを含むツールバーをアプリケーションに追加したいと考えています。問題は両方の項目がポートレートモードで正しく動作していることですが、横向きモードの場合、テキストフィールドとボタンの幅は自動的に調整されず、ツールバー全体を満たしません。

バーアイテムに制約を追加することができないことに私が気づいたことが1つあります。私はすでに両方の項目の動的な幅を設定するために、柔軟な幅と固定幅を試していますが、ここではソリューションの説明がないので私のために働いていました。ですから、横長モードのツールバーにあるテキストフィールドとボタンの幅を柔軟に設定するにはどうすればよいのか教えてください。前もって感謝します。

Screenshot of what i get in landscape mode

Screenshort of what i want to display on view

+0

が1に 'textField'の' contentHuggingPriority'を設定してみてください...それだけで推測だが、それは助けを –

+0

おかげでうまくいくかもしれません。 contentHuggingPriorityに関する詳細を教えてください。私のアプリでそれをどう使うことができますか?私がそれについて検索するとき、私は制約に関連するが、私はすでにバーアイテムに制約を加えることができないと述べた。 –

+0

https://developer.apple.com/documentation/uikit/uiview/1622485-setcontenthuggingpriority –

答えて

0

私は、テキストフィールドの柔軟な幅を設定するために、複数のものを実装しようと解決策を見つけました。 1行のコードを追加するだけで、それは魅力的に機能します。上、左、右の制約をツールバーに追加し、ツールバーの固定高さの制約を追加し、テキストフィールドのアウトレットを接続します。

txtfld.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;

関連する問題