修改UISearchBar背景颜色

简介: 修改UISearchBar背景颜色

iPhone开发之UISearchBar学习是本文要学习的内容,主要介绍了UISearchBar的使用,不多说,我们先来看详细内容。关于UISearchBar的一些问题。


1、修改UISearchBar的背景颜色


UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性。方法是直接将 UISearchBarBackGround移去  

seachBar=[[UISearchBar alloc] init];  
seachBar.backgroundColor=[UIColor clearColor];  
for (UIView *subview in seachBar.subviews)   
{    
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])  
       {    
[subview removeFromSuperview];    
break;  
}   

第二种解决的方法:

[[searchbar.subviews objectAtIndex:0]removeFromSuperview];

2、

UISearchBar* m_searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 44, 320, 41)];  
m_searchBar.delegate = self;  
m_searchBar.barStyle = UIBarStyleBlackTranslucent;  
m_searchBar.autocorrectionType = UITextAutocorrectionTypeNo;  
m_searchBar.autocapitalizationType = UITextAutocapitalizationTypeNone;  
m_searchBar.placeholder = _(@"Search");  
m_searchBar.keyboardType =  UIKeyboardTypeDefault;  
//为UISearchBar添加背景图片  
UIView *segment = [m_searchBar.subviews objectAtIndex:0];  
UIImageView *bgImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Images/search_bar_bg.png"]];  
[segment addSubview: bgImage];  
//<---背景图片  
[self.view addSubview:m_searchBar];  
[m_searchBar release];


3:取消UISearchBar调用的键盘

[searchBar resignFirstResponder];

添加UISearchBar的两种方法:


代码

UISearchBar *mySearchBar = [[UISearchBar alloc] 
initWithFrame:CGRectMake(0.0, 0.0, self.view.bounds.size.width, 45)];          
 mySearchBar.delegate = self;          
 mySearchBar.showsCancelButton = NO;          
 mySearchBar.barStyle=UIBarStyleDefault;          
 mySearchBar.placeholder=@"Enter Name or Categary";           
mySearchBar.keyboardType=UIKeyboardTypeNamePhonePad;           
[self.view addSubview:mySearchBar];          
 [mySearchBar release];

在 tableview上添加:  


代码  

//add Table  
        UITableView *myBeaconsTableView = [[UITableView alloc]   
                                           initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height-40)    
                                              style:UITableViewStylePlain];  
        myBeaconsTableView.backgroundColor = [UIColor whiteColor];  
        myBeaconsTableView.delegate=self;  
        myBeaconsTableView.dataSource=self;  
        [myBeaconsTableView setRowHeight:40];  
        // Add searchbar   
        searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.bounds.size.width, 40)];  
        searchBar.placeholder=@"Enter Name";  
        searchBar.delegate = self;  
        myBeaconsTableView.tableHeaderView = searchBar;  
        searchBar.autocorrectionType = UITextAutocorrectionTypeNo;  
        searchBar.autocapitalizationType = UITextAutocapitalizationTypeNone;  
        [searchBar release];  
        [self.view addSubview:myBeaconsTableView];  
        [myBeaconsTableView release];

小结:iPhone开发之UISearchBar学习的内容介绍完了,希望本文对你有所帮助

    self.SearchMem = [[UISearchBar alloc] initWithFrame:CGRectMake(0,0,320,44)];
    self.SearchMem.tag = 1;
    self.SearchMem.barStyle = UIBarStyleBlackTranslucent;
    self.SearchMem.backgroundColor = [UIColor clearColor];
    self.SearchMem.delegate = self;
    self.SearchMem.userInteractionEnabled = TRUE;
    for (UIView *subview in self.SearchMem.subviews) {
        if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
            [subview removeFromSuperview];
            break;
        }
    }
    [self.TongxunluView addSubview:self.SearchMem];
//    self.SearchMem.barStyle = UIBarStyleBlackTranslucent;
//    self.SearchMem.autocorrectionType = UITextAutocorrectionTypeNo;
//    self.SearchMem.autocapitalizationType = UITextAutocapitalizationTypeNone;
//    self.SearchMem.placeholder = @"Search";
//    self.SearchMem.keyboardType =  UIKeyboardTypeDefault;
//    
//    [[self.SearchMem.subviews objectAtIndex:0] removeFromSuperview];
//    self.SearchMem.autocorrectionType = UITextAutocorrectionTypeNo;
//    UIImageView * bgImage = [[[UIImageView alloc] initWithFrame: CGRectMake(0, 0, 320, 44)] autorelease];
//   // bgImage.image = [UIImage imageNamed:@"denglukuang.png"];
//    [self.view addSubview:bgImage];
相关文章
|
10月前
|
Android开发
ImageView设置tint ,修改图标颜色
ImageView设置tint ,修改图标颜色
134 0
UITextView设置边框
UITextView设置边框
71 0
三种方法设置UITextField的占位文字颜色
三种方法设置UITextField的占位文字颜色
299 0
|
UED 缓存 异构计算
UIImageView添加圆角的几种方法
喜欢我的可以关注收藏我的个人博客:RobberJJ 创建一个UIImageView对象: UIImageView * poImgView = [[UIImageView alloc] init]; 第一种方法 poImgView.
979 0