前言
在我们日常开发中,经常会遇到一些需求非要把 uisearchbar 默认的圆角矩形的圆角改大,顶端改成圆形的。虽然系统没有提供这个 api,不过还是有一个简单方法可以解决。
解决方法:
首先在 uiview 的 category 里加一个方法:
uiview+utils.m
1
2
3
4
5
6
7
8
9
10
11
12
13
|
- (uiview*)subviewofclassname:(nsstring*)classname {
for (uiview* subview in self.subviews) {
if ([nsstringfromclass(subview. class ) isequaltostring:classname]) {
return subview;
}
uiview* resultfound = [subview subviewofclassname:classname];
if (resultfound) {
return resultfound;
}
}
return nil;
}
|
用的时候:
1
2
3
|
uiview* backgroundview = [searchbar subviewofclassname:@ "_uisearchbarsearchfieldbackgroundview" ];
backgroundview.layer.cornerradius = 14.0f;
backgroundview.clipstobounds = yes;
|
就可以改成圆形了。效果:
圆形的 uisearchbar
用这个方法还可以改取消按钮的颜色、字体什么的。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。
原文链接:http://www.jianshu.com/p/6a14db9282df