に右側のビューを追加した後UITextField
、右側のビューとクリア ボタンの両方を表示することを拒否していることがわかります (両方rightViewMode
と にclearButtonMode
設定されていUITextFieldViewModeAlways
ます)。正しいビューが表示されますが、クリア ボタンが表示されなくなりました。clearButtonRectForBounds
と を無効にすることで、それらが重複しないようにしclearButtonRectForBounds
ました。そして、rightView の代わりに leftView を使用すると、そのような問題は発生せず、左ビューとクリア ボタンの両方が表示されます。
したがって、ドキュメントには記載されていないようですが、右のビューが表示されていない場合(およびテキストプロパティが空白文字列でない場合)にのみクリアボタンが表示されるように見えます。これは正しいですか、信頼できる回避策はありますか? それまでの間、UITextField だけから取得するものを取得するために、UITextField の上に右のビューをオーバーレイする UIView を作成する必要があると思います。