2017-09-10 5 views
0

UITextFieldは、フィールドの左端に相当する内容のテキストを表示します。これは醜いので、フィールドに境界が表示されていると読みにくい場合があります。一方、UITextViewは、テキストの周囲に自動的にパディング(空白)があります。私はUITextFieldのすべてのプロパティを調べて実験しましたが、テキストの周りをパディングするために使用できる方法はありません。コンテンツの左側にパディングを使用してUITextFieldを作成するにはどうすればよいですか?

テキストフィールドでdrawText(in:CGRect)を呼び出してみましたが、効果がありませんでした。しかし、私はCGRectがその呼び出しに必要であるかどうか分からない。私は.noneを含む異なるボーダースタイルを試しました。空のUIViewを作成し、それをテキストフィールドのleftViewプロパティに割り当てようとしましたが、それも効果がありませんでした。そして、私はviewDidLoad、viewDidAppear、そしてtextFieldにテキストを書いているところでこれらのことをやってみました。テキストはtextFieldに期待どおりに表示されますが、これらの他のものはtextFieldの外観に何ら影響を与えません。それは私にはたくさんの人がUITextFieldにテキストを表示しなければならないと思っています。

答えて

0

"textField"と呼ばれるフィールドでは、次のように動作します。フィールドの左端をtextFieldの左端から8ピクセル右にずらしてパディングを挿入します。

textField.layer.sublayerTransform = CATransform3DMakeTranslation(8、0、0);

これは2016年11月のユーザーDhiru(評判1285)の別の質問に対する回答です。ありがとうDhiru!

私はsublayerTransformまたはCATransform3DMakeTranslationのどちらかに慣れていないので、すぐにはわからない副作用がないことを確信できません。私はそれが "3D変換"と呼ばれているのを少しは心配していますが、私のアプリケーションについては3Dがありません。しかし、少なくとも今のところ、これは疑問に答えるようです。

関連する問題