iOS中修改UISearchBar圆角的小技巧分享

时间:2022-09-19 21:08:44

前言

在我们日常开发中,经常会遇到一些需求非要把 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;

就可以改成圆形了。效果:

iOS中修改UISearchBar圆角的小技巧分享
圆形的 uisearchbar

用这个方法还可以改取消按钮的颜色、字体什么的。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.jianshu.com/p/6a14db9282df