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必须有大小.
网友评论