2013-09-21 5 views
4

У меня есть настройки текстового поля следующим образом:UITextField BorderColor и ширины на одной стороне текстового поля

textField.borderStyle = UITextBorderStyleLine; 
textField.layer.borderColor = [[UIColor greenColor] CGColor]; 
textField.layer.borderWidth= 10.0f;' 

Но можно просто иметь большую границу на левой стороне, и это будет другой цвет ? Или мне нужно позиционировать drawRect там с цветом, который я хочу и с позицией?

ответ

5

попробовать с этим кодом может быть помощь вам добавлять Border левая сторона обычая TextFiled как Беллоу: -

- (void)viewDidLoad 
{ 

    [super viewDidLoad]; 
    UIView *bottomBorder = [[UIView alloc] 
          initWithFrame:CGRectMake(0,0,4,txtField.frame.size.height)]; 
    bottomBorder.backgroundColor = [UIColor redColor]; 
    [txtField addSubview:bottomBorder]; 

} 

Этот пыльник делегат код для запуска после некоторого пространства в текстовое поле

- (void)textFieldDidBeginEditing:(UITextField *)textField { 
    UIView *paddingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 5, 20)]; 
    textField.leftView = paddingView; 
    textField.leftViewMode = UITextFieldViewModeAlways; 
} 

OUTPUT выглядеть следующим образом: -

enter image description here

0

Нет, я думаю, что это возможно, вы можете установить borderStyle вашего текстового вида на UITextBorderStyleNone, а затем вы можете разместить их поверх всего, что хотите. В случае с Facebook это похоже на то, что они находятся поверх табличного представления, но вы можете поместить любое изображение позади них.

0

вы можете создать одно изображение с одной двусторонней границы и установить его на background из ваших UITextField:

yourTextField.backgroundColor = 
[UIColor colorWithPatternImage:[UIImage imageNamed:@"yourBorderedImageName"]]; 
1

Я просто написал this small category легко добавить границу определенного цвета и толщины, с одной стороны зрения. Это зависит от отличного PureLayout, так как граница автоматически изменяется с учетом вида, и я не хочу писать все это с помощью собственного API Auto Layout.

Просто позвоните

[myView addBorder:ALEdgeLeft withColor:[UIColor blueColor] width:2.0f]; 

Вы можете назвать это несколько раз, чтобы добавить границы по разным краям.

0

Я думаю, что лучшим способом является добавление категории в UIView, но сложения ограничиваются как представления вместо CALayers, поэтому они могут правильно изменять размер с помощью AutoresizingMasks.

Отметьте этот ответ: https://stackoverflow.com/a/29033559/1658831

 Смежные вопросы

  • Нет связанных вопросов^_^