IOS 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學習的內容介紹完了,希望本文對你有所幫助