UITextField之leftView的若干问题

UITextField之leftView的若干问题_第1张图片
诸如这种效果的搜索框,其实就是很好的利用了UITextField的leftView

UITextField的leftView接收的对象类型是UIView.首先UITextField的边框一开始我是下面这样设置的.

searchTextField.borderStyle=UITextBorderStyleRoundedRect;

但是这一方法在设置leftView的时候会有影响,最大的一个影响就是leftView紧贴着UITextField的边.从而使你的leftView显示不全.

那么怎么换一种方式解决呢?

searchTextField.layer.cornerRadius=5.0;

searchTextField.layer.borderWidth=1.0;

searchTextField.layer.borderColor= [UIColorlightGrayColor].CGColor;

笔者使用的UITextField的layer属性来设计与上图一样的样式,最终达到了自己想要的结果.

在设置UITextField的leftView的时候可能不显示,不显示的原因可能有下:

1,没有设置让leftView显示,leftView默认是不显示的,所以必须主动让他显示,那么就设置leftViewMode属性.

searchTextField.leftViewMode=UITextFieldViewModeAlways;

2,没有给leftView大小,笔者以为只要给UITextField的leftView赋值就行了,leftView会有一个默认的大小,但是那只是我自己的想法,实际情况是,给UITextField的leftView赋值的时候,你所定义的View必须有大小.

你可能感兴趣的:(UITextField之leftView的若干问题)