修改UISearchBar取消按钮的文本和文本颜色的方法

UISearchBar系统的颜色是蓝色,而且默认文本是cancel或“取消”(语言环境设为China时),我们的项目中很多时候是需要修改取消按钮的属性的,特别是需要修改取消按钮的文本颜色,对于修改UISearchBar取消按钮的文本和颜色的方法,在iOS7之前一般用的方法是通过遍历UISearchBar实例对象的子视图来找到取消按钮,从而进行相应的修改,可惜的是,在iOS7之后这个方法貌似没有那么好用了,这里我推荐一个方法,很简洁也很实用,原理和上面提到的方法类似,只是方式不同,下面直接上代码。

//初始化UISearchBar对象,kMainWidth是屏幕宽度的宏

UISearchBar *searchBar = [[UISearchBar alloc]initWithFrame:CGRectMake(0, 0, kMainWidth, 44)];

searchBar.placeholder = @"搜索";

searchBar.showsCancelButton = YES;

//找到取消按钮

UIButton *cancleBtn = [searchBar valueForKey:@"cancelButton"];

//修改标题和标题颜色

[cancleBtn setTitle:@"取消" forState:UIControlStateNormal];

[cancleBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

[self.view addSubview:searchBar];

修改后的效果如下图所示,


修改UISearchBar取消按钮的文本和文本颜色的方法_第1张图片

到此结束,是不是很方便啊,如果感觉这个对你有用,请随手赞一个吧,谢谢!

你可能感兴趣的:(修改UISearchBar取消按钮的文本和文本颜色的方法)