UI25_UISearchBar

1.初始化

UISearchBar *search = [[UISearchBar alloc] initWithFrame:CGRectMake( 0, 0, 100, 30)];
[self.view addSubview:search];
[search release];

2.搜索框的占位符

[search setPlaceholder:@"搜索文本"];

3.顶部的提示文本,相当于空间的title(标题)

[search setPrompt:@"title"];

4.搜索框样式

[search setBarStyle:UIBarMetricsDefault];

5.搜索框的颜色(当设置此属性是,barStyle将失效)

[search setTintColor:[UIColor blackColor]];

6.设置是否透明

[search setTranslucent:YES];

7.设置背景图片

[search setBackgroundImage:[UIImage imageNamed:@"1"]];

8.设置搜索框中文本框的背景图片

[search setSearchFieldBackgroundImage:[UIImage imageNamed:@"3"] forState:UIControlStateNormal];
对于forState:还有UIControlStateHighlighted,可以点击进入看看

9.设置搜索框中文本框背景的偏移量

[search setSearchFieldBackgroundPositionAdjustment:UIOffsetMake(40, 50)];

10.设置搜索结果是否被选中

[search  setSearchResultButtonSelected:NO];

11.是否显示搜索结果

[search setShowSearchResultButton:YES];

12.设置搜索框中文本框的偏移量

[search  setSearchTextPositionAdjustment:UIOffsetMake(40, 0)];

13.UISearchBar提供的遮盖视图

[search setInputAccessoryView:hideView];
hideView自己定义的视图
在苹果的电话本的搜索功能,当UISearchBar焦点状态下,出现半透明遮盖层 那个半透明的黑色View就是遮盖视图
遮盖层

14.设置键盘样式

[search setKeyboardType:UIKeyboardTypeEmailAddress];

15.下面是关于搜索框下边的分栏条

(1)是否显示分栏条

[search setShowScopeBar:YES];      

(2)分栏条 栏目

[search setScopeButtonTitle:[NSArray arrayWithObjects:@"one",@"two",@"three",nil]];

(3)分栏条的背景图片

[search setScopeBarBackgroundImage:[UIImage imageNamed:@""]];

(4)分栏条默认选中的按钮的下标

[search setSelectedScopeButtonIndex:1];

16.是否显示右侧的书图标

[search setShowBookmarkButton:YES];

17.是否显示取消按钮

[search setShowCancelButton:YES];
带动画效果
[search setShowCancelButton:YES animated:YES];

18.是否提供自动修正功能(一般都不用)

[search setSpellCheckingType:UITextSpellCheckingTypeYES];

19.设置自动检查的类型

[search setAutocorrectionType:UITextAutocorrectionTypeDefault];
是否提供自动修正功能,一般设置为UITextAutocorrectionTypeDefault

20.设置代理

search.delegate = self;

21.尺寸适应

[search sizeToFit];

方法(delegate的协议方法等等 可以点击进入UISearchBar控件的类里看看)
1.控制遮罩层的透明度

- (void)controlAccessoryView:(float)alphaValue{
   [UIView animateWithDuration:0.2 animations:^{
   [hideView setAlpha:alphaValue];
   }completion:^(BOOL finashed){
   if (alphaValue <= 0){
   [search resignFirstResponder];
   [search setShowCancelButton:NO animated:YES];
   [self.navigationController setNavigationBarHidden:NO animated:YES];
   }
   }];
}

2.UISearchBar得到焦点并开始编辑时,执行该方法

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar{
 [search setShowsCancelButton:YES animated:YES];
 [self.navigationController setNavigationBarHidden:NO animated:YES];
 //显示遮盖层
 [self controlAccessoryView:0.55];
 rerutn YES;
}

3.取消按钮被按下时执行的方法

- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar{
[search resignFirstResponder];
[search setShowCancelButton:NO animated:YES];
搜索相关数据
[collectionView searchDataBySearchString:search.text];
[self.navigationController setNavigationBarHidden:NO animated:YES];
//隐藏遮盖层
[self controlAccessoryView:0];
}

4.当搜索内容变化时,执行此方法(实现时时搜索)

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
搜索相关数据
[collectionView searchDataBySearchString:search.text];
[self.navigationController setNavigationBarHidden:NO animated:YES];
//隐藏遮盖层
[self controlAccessoryView:0];
}

5.键盘中,搜索按钮被按下执行的方法

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{
[search resignFirstResponder];
[search setShowCancelButton:NO animated:YES];
搜索相关数据
[collectionView searchDataBySearchString:search.text];
[self.navigationController setNavigationBarHidden:NO animated:YES];
//隐藏遮盖层
[self controlAccessoryView:0];
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值