iOS开发 UISearchController的cancel按钮自定义

UISearchController的cancel按钮自定义中文取消 有两种方法
一:遍历法

- (void)updateSearchResultsForSearchController:(UISearchController *)searchController {  
    //    //修改"Cancle"退出字眼,这样修改,按钮一开始就直接出现,而不是搜索的时候再出现  
    searchController.searchBar.showsCancelButton = YES;  
    for(id sousuo in [searchController.searchBar subviews]) {  
        for (id view in [sousuo subviews]) {  
            if([view isKindOfClass:[UIButton class]]){  
                UIButton *btn = (UIButton *)view;  
                [btn setTitle:@"取消" forState:UIControlStateNormal];  
                [btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];  
            }  
        }  
    }  
}  

二:真机环境下,修改plist文件的语言环境,最为方便的方法

// 改变取消按钮字体颜色  
    self.searchController.searchBar.tintColor =  [UIColor whiteColor];  
    // 改变searchBar背景颜色  
    self.searchController.searchBar.barTintColor =  [UIColor whiteColor];  
    // 取消searchBar上下边缘的分割线  
    self.searchController.searchBar.backgroundImage = [[UIImage alloc] init];  

有时候弹出的搜索VC的搜索框会先弹出屏幕外一下,然后又弹回来,可以试试这一句代码

self.definesPresentationContext = YES;  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容