как установить стиль границы поля UIText - PullRequest
25 голосов
/ 26 апреля 2011

Как программно установить стиль границы для 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];

Ответы [ 6 ]

51 голосов
/ 26 апреля 2011

Попробуйте это

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];

Для справки

8 голосов
/ 26 апреля 2011

Вы можете использовать Quartzcore и свойства слоя.

sometextfield.layer.borderWidth = 1;
sometextfield.layer.borderColor = [[UIColor redColor] CGColor];

Я должен не забыть добавить QuartzCore в ваш проект и импортировать его туда, где вы хотите его использовать.

5 голосов
/ 26 декабря 2014

Ниже четырех, любой может быть использован программно,

[textField setBorderStyle:UITextBorderStyleNone];

[textField setBorderStyle:UITextBorderStyleLine];

[textField setBorderStyle:UITextBorderStyleBezel];

[textField setBorderStyle:UITextBorderStyleRoundedRect];

, где textField - это выход UITextField

2 голосов
/ 06 июня 2016

Я знаю, вопрос об Obj-C, но я пришел сюда за Свифтом. А в 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;

Устанавливает пользовательский цвет фона и границу одного и того же цвета (чтобы скрыть границу, но при этом все еще есть некоторый отступ между текстом и границами текстового поля.

2 голосов
/ 04 июля 2014
[pTxtTithiTime.layer setBorderColor:[[[UIColor grayColor] colorWithAlphaComponent:0.5] CGColor]];

[pTxtTithiTime.layer setBorderWidth:0.8];

// Закругленная угловая часть, где вы указываете радиус угла вашего вида:

  pTxtTithiTime.layer.cornerRadius = 5;

  pTxtTithiTime.clipsToBounds = YES;
0 голосов
/ 28 августа 2014

Вы можете сделать 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...