IOS UISearchBar 详解
iPhone开发之UISearchBar学习是本文要学习的内容,主要介绍了UISearchBar的使用,不多说,我们先来看详细内容。关于UISearchBar的一些问题。
1、修改UISearchBar的背景颜色
UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性。方法是直接将 UISearchBarBackGround移去
1
2
3
4
5
6
7
8
9
10
|
seachBar=[[UISearchBar alloc] init]; seachBar.backgroundColor=[UIColor clearColor]; for (UIView *subview in seachBar.subviews) { if ([subview isKindOfClass:NSClassFromString(@ "UISearchBarBackground" )]) { [subview removeFromSuperview]; break ; } } |
第二种解决的方法:
1
|
[[searchbar.subviews objectAtIndex:0]removeFromSuperview]; |
2、
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
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调用的键盘
1
|
[searchBar resignFirstResponder]; |
添加UISearchBar的两种方法:
代码
1
2
3
4
5
6
7
8
9
|
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上添加:
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
//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学习的内容介绍完了,希望本文对你有所帮助
原文链接:http://www.cnblogs.com/likwo/archive/2011/10/10/2205445.html