UISearchBar

转自:http://cgema.diandian.com/post/2012-09-25/40039034114

UISearchBar使用

/*取消按钮*/

- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar{  

   [self doSearch:searchBar];  



 /*键盘搜索按钮*/  

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{  

  [searchBar resignFirstResponder];   

  [self doSearch:searchBar];  



/*搜索*/  

- (void)doSearch:(UISearchBar *)searchBar{  

   ...  

}  

 

UISearchBar上按钮的默认文字为Cancel,如果想改为其他文字请调用一下代码for(id cc in [searchtext subviews]){  

  if([cc isKindOfClass:[UIButton class]]){  

     UIButton *btn = (UIButton *)cc;  

     [btn setTitle:@"取消"  forState:UIControlStateNormal];

  }

}


//修改搜索框背景
seachBar.backgroundColor=[UIColor clearColor];


//去掉搜索框背景
//1.
[[searchbar.subviews objectAtIndex:0]removeFromSuperview];
//2.
for (UIView *subview in seachBar.subviews)
{
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])
{
[subview removeFromSuperview];
break;
}
}


//3自定义背景
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"40-di.png"]];
[mySearchBar insertSubview:imageView atIndex:1];
[imageView release];


//4输入搜索文字时隐藏搜索按钮,清空时显示
- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {
searchBar.showsScopeBar = YES;
[searchBar sizeToFit];
[searchBar setShowsCancelButton:YES animated:YES];
return YES;
}
- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar {
searchBar.showsScopeBar = NO;
[searchBar sizeToFit];
[searchBar setShowsCancelButton:NO animated:YES];
return YES;
}


//改变搜索按钮文字
//改变UISearchBar取消按钮字体
for(id cc in [searchBar subviews])
{
if([cc isKindOfClass:[UIButton class]])
{
UIButton *btn = (UIButton *)cc;
[btn setTitle:@"搜索" forState:UIControlStateNormal];
}
}



下图有点小,可以下载至本地放大查看。




当你在seachBar中输入字母之前的时候,只是用鼠标选中searchBar的时候,如图


终端输出截图如下:(这个时候调用先shouldBeginEditing,之后调用didBeginEditing,)

当你希望选中UISearchBar的时候,键盘自动调用加载到界面,你需要将下面函数的返回值设置为YES;

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {   

   NSLog(@"shouldBeginEditing");

   returnYES;

}


当你在seachBar中输入字母Dditring的时候,如图:

 


终端显示


当你点击键盘右下角的Done的时候,调用searchButtonClicked


 

UISearchBar的相关属性:


当在Viewdidload里面加入下面两行的时候,


界面searchBar显示


当在Viewdidload里面加入下面一行的时候


界面searchBar显示:


9 September Tuesday
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值