我有一个像这样的文本字段设置:
textField.borderStyle = UITextBorderStyleLine;
textField.layer.borderColor = [[UIColor greenColor] CGColor];
textField.layer.borderWidth= 10.0f;'
但是左边可能只有一个更大的边框,它是不同的颜色? 或者我是否需要使用我想要的颜色和位置来定位drawRect?
答案 0 :(得分:5)
尝试使用此代码可能有助于您添加自定义TextFiled的边框左侧像Bellow: -
- (void)viewDidLoad
{
[super viewDidLoad];
UIView *bottomBorder = [[UIView alloc]
initWithFrame:CGRectMake(0,0,4,txtField.frame.size.height)];
bottomBorder.backgroundColor = [UIColor redColor];
[txtField addSubview:bottomBorder];
}
此Bellow代理代码在textfield中的某个空格后启动
- (void)textFieldDidBeginEditing:(UITextField *)textField {
UIView *paddingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 5, 20)];
textField.leftView = paddingView;
textField.leftViewMode = UITextFieldViewModeAlways;
}
OUTPUT看起来像这样: -
答案 1 :(得分:1)
我刚写了this small category,可以在视图的一侧轻松添加指定颜色和粗细的边框。这取决于优秀的PureLayout,因为边框会自动调整视图,我不想使用Auto Layout的原生API来编写所有这些内容。
致电
[myView addBorder:ALEdgeLeft withColor:[UIColor blueColor] width:2.0f];
你可以多次调用它来在不同的边缘添加边框。
答案 2 :(得分:0)
不,我认为可以将文本视图的borderStyle设置为UITextBorderStyleNone
,然后您可以将它们置于您想要的任何位置之上。在Facebook的情况下,它看起来像是在桌面视图之上,但你可以把任何图像放在它们后面。
答案 3 :(得分:0)
您可以创建一个带有单边框的图片,并将其设置为background
的{{1}}:
UITextField
答案 4 :(得分:0)
我认为最好的方法是在UIView上添加一个类别,但是将边框添加为视图而不是CALayers,这样他们就可以使用AutoresizingMasks正确调整大小。