123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- //
- // UISearchBar+RQExtension.m
- // RQCommon
- //
- // Created by 张嵘 on 2018/11/23.
- // Copyright © 2018 张嵘. All rights reserved.
- //
- #import "UISearchBar+RQExtension.h"
- @implementation UISearchBar (RQExtension)
- + (void)load{
- // 修改按钮标题文字属性( 颜色, 大小, 字体)
- if (@available(iOS 9.0, *)) {
- [[UIBarButtonItem appearanceWhenContainedInInstancesOfClasses:@[[UISearchBar class]]] setTitleTextAttributes:@{NSForegroundColorAttributeName: RQ_MAIN_TINTCOLOR, NSFontAttributeName: [UIFont systemFontOfSize:16]} forState:UIControlStateNormal];
- // 将searchBar的cancel按钮改成中文的
- [[UIBarButtonItem appearanceWhenContainedInInstancesOfClasses:@[[UISearchBar class]]] setTitle:@"取消"];
- } else {
- // Fallback on earlier versions
- #pragma clang diagnostic push
- #pragma clang diagnostic ignored "-Wdeprecated-declarations"
- //这里写出现警告的代码就能实现去除警告
- // 将searchBar的cancel按钮改成中文的
- [[UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil] setTitle:@"取消"];
- #pragma clang diagnostic pop
- }
- }
- - (void)rq_configureSearchBar{
- self.searchBarStyle = UISearchBarStyleProminent;
- self.barStyle = UIBarStyleDefault;
-
- self.barTintColor = RQ_MAIN_BACKGROUNDCOLOR;
- self.tintColor = RQ_MAIN_TINTCOLOR;
-
- /// 去掉SearchBar的上下的黑色细线
- UIImageView *view = [[[self.subviews objectAtIndex:0] subviews] firstObject];
- view.layer.borderColor = RQColorFromHexString(@"#DFDFDD").CGColor;
- view.layer.borderWidth = 1;
-
- self.backgroundImage = RQImageNamed(@"widget_searchbar_cell_bg_5x44");
- [self setSearchFieldBackgroundImage:RQImageNamed(@"widget_searchbar_textfield_17x28") forState:UIControlStateNormal];
- [self setImage:RQImageNamed(@"SearchContactsBarIcon_20x20") forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal];
-
- self.searchTextPositionAdjustment = UIOffsetMake(5, 0);
- self.placeholder = @"搜索";
- }
- @end
|