UITextField
の境界線スタイルをプログラムで設定するにはどうすればよいですか?
私は次のようにテキストフィールドを作成しています:
UITextField *tfText = [[UITextField alloc] initWithFrame:CGRectMake(65, 200, 200, 30)];
tfText.backgroundColor = [UIColor colorWithRed:0.2 green:0.9 blue:0.5 alpha:0.3];
tfText.textAlignment = UITextAlignmentCenter;
[self.view addSubview:tfText];
[tfText release];
これを試して
UITextField *tfText = [[UITextField alloc] initWithFrame:CGRectMake(65, 200, 200, 30)];
tfText.backgroundColor = [UIColor colorWithRed:0.2 green:0.9 blue:0.5 alpha:0.3];
tfText.textAlignment = UITextAlignmentCenter;
// Border Style None
[tfText setBorderStyle:UITextBorderStyleNone];
[self.view addSubview:tfText];
[tfText release];
参考のために
Quartzcoreとレイヤープロパティを使用できます。
sometextfield.layer.borderWidth = 1;
sometextfield.layer.borderColor = [[UIColor redColor] CGColor];
プロジェクトにQuartzCoreを追加し、使用したい場所にインポートすることを忘れないでください。
4つ以下から、誰でもプログラムで使用できます
[textField setBorderStyle:UITextBorderStyleNone];
[textField setBorderStyle:UITextBorderStyleLine];
[textField setBorderStyle:UITextBorderStyleBezel];
[textField setBorderStyle:UITextBorderStyleRoundedRect];
ここで、textFieldはITextFieldのアウトレットです
質問はObj-Cについてですが、私はここでSwiftに来ました。そして、Swiftでは、次のように行われます。
txt.backgroundColor = UIColor(red: 0.9, green: 0.9, blue: 0.9, alpha: 1.0);
txt.borderStyle = UITextBorderStyle.RoundedRect
let myColor : UIColor = UIColor(red: 0.9, green: 0.9, blue: 0.9, alpha: 1.0);
txt.layer.borderWidth = 3;
txt.layer.borderColor = myColor.CGColor;
これにより、カスタムの背景色と境界線が同じ色に設定されます(境界線を非表示にしますが、テキストとテキストフィールドの境界線の間にはまだパディングがあります)。
[pTxtTithiTime.layer setBorderColor:[[[UIColor grayColor] colorWithAlphaComponent:0.5] CGColor]];
[pTxtTithiTime.layer setBorderWidth:0.8];
//ビューのコーナー半径を指定する角丸部分:
pTxtTithiTime.layer.cornerRadius = 5;
pTxtTithiTime.clipsToBounds = YES;
UITextFieldは、次のようにプログラムで作成できます。
UITextField *txtField = [[UITextField alloc]initWithFrame:CGRectMake(10, 260, 280, 30)]; // your required coordinate
txtField.delegate = self;
txtField.placeholder = @"My TextField";
txtField.borderStyle = UITextBorderStyleNone;
txtField.keyboardType = UIKeyboardTypeDefault;
txtField.backgroundColor = [self setBackGroundColorOnButton];
txtField.layer.cornerRadius = 5.0;