如何修改系统UISearchBar的样式-创新互联
自从接触iOS快一年多的时间了,感觉自己还是菜鸟一枚,最近在整理自己的开发过程中得点点滴滴,想通过博客的形式记录下来。本博客会陆续添加内容,鉴于本人水平有限,如有错误,请给与指正,感激不尽。
“真诚服务,让网络创造价值”是我们的服务理念,创新互联公司团队十年如一日始终坚持在网站建设领域,为客户提供优质服。不管你处于什么行业,助你轻松跨入“互联网+”时代,PC网站+手机网站+公众号+小程序设计。修改UISearchBar的样式,网上也有很多种,也都大同小异,本篇也不例外,但确实很实用,废话不多说,上代码:
1.UISearchBar带有背景颜色的
if (!_searchBar) {
_searchBar=[[UISearchBar alloc]initWithFrame:CGRectMake(10, 20, self.view.frame.size.width-20, 40)];
_searchBar.placeholder=@"搜索";
_searchBar.delegate=self;
//searchBar的背景颜色
//1.
[_searchBar setBackgroundColor:[UIColor orangeColor]];
//2.关键
[[[_searchBar.subviews objectAtIndex:0].subviews objectAtIndex:0] removeFromSuperview];
//显示取消按钮
_searchBar.showsCancelButton=YES;
UIButton *cancelBtn=[_searchBar valueForKey:@"_cancelButton"];
[cancelBtn setTitle:@"取消" forState:UIControlStateNormal];
cancelBtn.titleLabel.font=[UIFont systemFontOfSize:14];
[cancelBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
//设置光标的颜色
_searchBar.tintColor=[UIColor redColor];
UITextField *searchFiled=[_searchBar valueForKey:@"_searchField"];
//设置处于编辑状态
[searchFiled becomeFirstResponder];
//输入文本的颜色
searchFiled.textColor=[UIColor greenColor];
//输入文本字体的大小
searchFiled.font=[UIFont systemFontOfSize:14];
//输入框的圆角设置
searchFiled.layer.cornerRadius=10;
searchFiled.layer.masksToBounds=YES;
//输入框里面的背景颜色
searchFiled.backgroundColor=[UIColor whiteColor];
//提示文本的颜色
[searchFiled setValue:[UIColor lightGrayColor] forKeyPath:@"_placeholderLabel.textColor"];
self.cancelField=searchFiled;
//输入框里的图标
[_searchBar setImage:[UIImage p_w_picpathNamed:@"boy.jpg"] forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal];
[self.view addSubview:_searchBar]
2.UISearchBar不带背景颜色的
// 如果不要searchBar的背景颜色
// 1.关键
[_searchBar setBackgroundColor:[UIColor clearColor]];
[[[_searchBar.subviews objectAtIndex:0].subviews objectAtIndex:0] removeFromSuperview];
// 2.
UIView *searchView=[[UIView alloc]initWithFrame:CGRectMake(10, 20, self.view.frame.size.width-20, 40)];
searchView.layer.cornerRadius=10;
searchView.layer.borderColor=[UIColor orangeColor].CGColor;
searchView.layer.borderWidth=1.f;
[self.view addSubview:searchView];
[self.view addSubview:_searchBar];
#pragram--
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
NSLog(@"实时监控文字输入");
}
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
NSLog(@"点击搜索按钮");
}
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
NSLog(@"点击取消按钮");
[self.cancelField resignFirstResponder];
}
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
名称栏目:如何修改系统UISearchBar的样式-创新互联
文章地址:http://myzitong.com/article/epjgh.html