IOS 开发之UISearchBar 详解及实例
IOSUISearchBar详解
iPhone开发之UISearchBar学习是本文要学习的内容,主要介绍了UISearchBar的使用,不多说,我们先来看详细内容。关于UISearchBar的一些问题。
1、修改UISearchBar的背景颜色
UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField.要IB中没有直接操作背景的属性。方法是直接将UISearchBarBackGround移去
seachBar=[[UISearchBaralloc]init]; seachBar.backgroundColor=[UIColorclearColor]; for(UIView*subviewinseachBar.subviews) { if([subviewisKindOfClass:NSClassFromString(@"UISearchBarBackground")]) { [subviewremoveFromSuperview]; break; } }
第二种解决的方法:
[[searchbar.subviewsobjectAtIndex:0]removeFromSuperview];
2、
UISearchBar*m_searchBar=[[UISearchBaralloc]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.subviewsobjectAtIndex:0]; UIImageView*bgImage=[[UIImageViewalloc]initWithImage:[UIImageimageNamed:@"Images/search_bar_bg.png"]]; [segmentaddSubview:bgImage]; //<---背景图片 [self.viewaddSubview:m_searchBar]; [m_searchBarrelease];
3:取消UISearchBar调用的键盘
[searchBarresignFirstResponder];
添加UISearchBar的两种方法:
代码
UISearchBar*mySearchBar=[[UISearchBaralloc] initWithFrame:CGRectMake(0.0,0.0,self.view.bounds.size.width,45)]; mySearchBar.delegate=self; mySearchBar.showsCancelButton=NO; mySearchBar.barStyle=UIBarStyleDefault; mySearchBar.placeholder=@"EnterNameorCategary"; mySearchBar.keyboardType=UIKeyboardTypeNamePhonePad; [self.viewaddSubview:mySearchBar]; [mySearchBarrelease];
在tableview上添加:
代码
//addTable UITableView*myBeaconsTableView=[[UITableViewalloc] initWithFrame:CGRectMake(0,0,self.view.bounds.size.width,self.view.bounds.size.height-40) style:UITableViewStylePlain]; myBeaconsTableView.backgroundColor=[UIColorwhiteColor]; myBeaconsTableView.delegate=self; myBeaconsTableView.dataSource=self; [myBeaconsTableViewsetRowHeight:40]; //Addsearchbar searchBar=[[UISearchBaralloc]initWithFrame:CGRectMake(0.0,0.0,self.view.bounds.size.width,40)]; searchBar.placeholder=@"EnterName"; searchBar.delegate=self; myBeaconsTableView.tableHeaderView=searchBar; searchBar.autocorrectionType=UITextAutocorrectionTypeNo; searchBar.autocapitalizationType=UITextAutocapitalizationTypeNone; [searchBarrelease]; [self.viewaddSubview:myBeaconsTableView]; [myBeaconsTableViewrelease];
小结:iPhone开发之UISearchBar学习的内容介绍完了,希望本文对你有所帮助