zoukankan      html  css  js  c++  java
  • UISearchDisplayController “No Results“ cancel修改

    Recently I needed to fully customize a UISearchBar, so here are some basic “recipes” on how to manage that using a UISearchDisplayController.

     

    1. Changing the title of the “cancel” button

    If you want to localize your UISearchBar or just want to apply a unique text matching your application just implement the following UISearchDisplayControllerDelegate method:

    -(void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller{
    
    [searchBar setShowsCancelButton:YES animated:NO];
    
    for(UIView *subView in searchBar.subviews){
    
    if([subView isKindOfClass:[UIButton class]]){
    
    [(UIButton*)subView setTitle:@"myCustomTitle" forState:UIControlStateNormal];
    
    }
    
    }
    
    }
    

    2. Changing the title of the “no results” label

    Again you need to implement a delegate method

    -(BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString{
    
    for(UIView *subview in searchController.searchResultsTableView.subviews) {
    
    if([subview isKindOfClass:[UILabel class]]) {
    
    [(UILabel*)subview setText:@"my custom 'no results' text"];
    
    }
    
    }
    
    return YES;
    
    }
    

    3. Custom background image

    Insert this snippet directly after you initialized your UISearchBar

    searchBarOverlay = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"SearchBarBack"]];
    searchBarOverlay.frame = CGRectMake(-8, -2, 320, 48);
    [searchBar addSubview:searchBarOverlay];
    [searchBar sendSubviewToBack:searchBarOverlay];
    
    for (UIView *v in [searchBar subviews]) {
    
    if ([NSStringFromClass([v class]) isEqualToString:@"UISearchBarBackground"])
    {
    [searchBar sendSubviewToBack:v];
    }
    
    if ([NSStringFromClass([v class]) isEqualToString:@"UIImageView"] && v != searchBarOverlay)
    {
    [searchBar sendSubviewToBack:v];
    }
    }

    5.Custom background color

    Finally a one-liner

     searchBar.tintColor = [UIColor redColor]; 


  • 相关阅读:
    30个热门的CSS3 Image Hover 脚本
    70个jQuery触摸事件插件 支持手势触摸!
    40个超酷的jQuery动画教程
    45个漂亮且有创意的HTML5网站展示
    40+极具创意的产品展示PSD模板
    25个开始学习HTMLE5的最好的资源
    25个很酷的jQuery倒计时脚本–添加动态计数器!
    45个wordpress自适应插件
    30+WordPress古典风格的主题古典却不失时尚
    为kindeditor上传图片添加水印(PHP版)
  • 原文地址:https://www.cnblogs.com/zsw-1993/p/4880001.html
Copyright © 2011-2022 走看看