0

iOS の searchField のように、objective-c で角の半径が大きいテキスト フィールドを作成しようとしています。私のxibでは、UITextFieldを追加しました。次のように、Objective-C でテキストフィールドのスタイルを設定します。

// corner radius
textField.layer.cornerRadius = 20.0f;
textField.layer.masksToBounds = YES;
textField.backgroundColor = [UIColor clearColor];

[textField setFont:[UIFont fontWithName:@"Univers-Condensed-Medium" size:18.0]];

結果: 入力の角が見えず、一部の白い背景がこれらを覆います。この画像で問題を確認できます。

問題のスクリーンショット

私は次のようないくつかのことを試しました:

textField.leftView.opaque = NO;
textField.leftView.backgroundColor = [UIColor clearColor];

textField.inputView.opaque = NO;
textField.inputView.backgroundColor = [UIColor clearColor];

textField.rightView.opaque = NO;
textField.rightView.backgroundColor = [UIColor clearColor];

アイコンを(テスト用に)追加しても、すべて同じ結果が得られました。コーナーを見えるようにするにはどうすればよいですか?

4

1 に答える 1

2

私はいくつかのテストを行いましたが、白い背景が重なることはありませんでした。コーナーの半径を変更すると、テキストフィールドはこのようになります。テキストフィールドが含まれているUIViewの背景色を変更してみて、常にこのようになることを確認してください。

残念ながら、cornerRadiusを変更して、ここに投稿した方法で表示したい場合は、背景画像を使用する必要があるかもしれませんが、わかりません。

私があなただったら、cornerRadiusなしでtextFieldを使用します。

于 2012-04-11T11:49:45.910 に答える