设置textField的几个属性

一开始主要是自己想写个左边带ImageView 的textField,加了之后发现、placeHolder,显示文本位置都要调整,其实也就设置下划线、placeHolder的位置,显示文本的位置、编辑文本的位置
继承UITextField ,重写drawRect,实现几个方法就好了

//添加下滑线
-(void)drawRect:(CGRect)rect {

CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, separatorColor.CGColor);
CGContextFillRect(context, CGRectMake(0, CGRectGetHeight(self.frame) - 0.5, CGRectGetWidth(self.frame), 0.5));

}

//控制placeHolder的位置
-(CGRect)placeholderRectForBounds:(CGRect)bounds
{

CGRect inset = CGRectMake(bounds.origin.x+30, bounds.origin.y, bounds.size.width -10, bounds.size.height);
return inset;

}

//控制显示文本的位置
-(CGRect)textRectForBounds:(CGRect)bounds
{

CGRect inset = CGRectMake(bounds.origin.x+30, bounds.origin.y, bounds.size.width -10, bounds.size.height);

return inset;

}

//控制编辑文本的位置
-(CGRect)editingRectForBounds:(CGRect)bounds
{

CGRect inset = CGRectMake(bounds.origin.x +30, bounds.origin.y, bounds.size.width -60, bounds.size.height);
return inset;

}

随便记一下,权当学习了

你可能感兴趣的:(设置textField的几个属性)