TextField作为搜索框的使用
在iOS开发中我们经常会使用到搜索框,但是有的时候系统自带的搜索框不足以满足我吗想要的功能,这个时候我们就可以使用自定义的搜索框实现想要的功能。
今天就简单的介绍一下怎么去使用UITextField实现一个搜索框,当然如果你有更好的方法也可以分享出来,大家相互学习。
一:直接使用
UITextField *text = [[UITextField alloc] init]; text.frame = CGRectMake(, , , ); text.background = [UIImage resizeImage:@"searchbar_textfield_background"]; //文字垂直居中 text.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; //搜索图标 UIImageView *view = [[UIImageView alloc] init]; view.image = [UIImage resizeImage:@"searchbar_textfield_search_icon"]; view.frame = CGRectMake(, , , ); //左边搜索图标的模式 view.contentMode = UIViewContentModeCenter; text.leftView = view; //左边搜索图标总是显示 text.leftViewMode = UITextFieldViewModeAlways; //右边删除所有图标 text.clearButtonMode = UITextFieldViewModeAlways; self.navigationItem.titleView = text;
二:封装
//初始化 /** * 使用TextField实现搜索框功能封装 */ //设置字体大小 self.font = [UIFont systemFontOfSize:]; //设置提示文字 self.placeholder = @"请输入搜索条件"; //设置文本框的背景图片(使用分类实现拉伸效果) self.background = [UIImage resizeImage:@"searchbar_textfield_background"]; //文字垂直居中 self.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; //搜索图标 UIImageView *view = [[UIImageView alloc] init]; //设置图片控制器的的图片 view.image = [UIImage resizeImage:@"searchbar_textfield_search_icon"]; //设置图片的frame view.width = ; view.height = ; //左边搜索图标的模式 view.contentMode = UIViewContentModeCenter; self.leftView = view; //左边搜索图标总是显示 self.leftViewMode = UITextFieldViewModeAlways; //右边删除所有图标 self.clearButtonMode = UITextFieldViewModeAlways;
/**使用一:
* 使用封装好的SearchBar
*/
iCocosSearchBar *searchbar = [iCocosSearchBar searchBar]; searchbar.width = ; searchbar.height = ; self.navigationItem.titleView = searchbar;
/**使用二
* 使用封装好的SearchBar
*/
iCocosSearchBar *searchbar = [iCocosSearchBar searchBar]; searchbar.width = ; searchbar.height = ; [self.view addSubview:searchbar];