UISearchController

作者: Johnny_Chang | 来源:发表于2016-04-03 18:47 被阅读377次

因为要做一个带有搜索栏的页面,所以找个下search的方法

iOS7以前是UISearchDisplayController

iOS8以后UISearchDisplayController被UISearchController替代,但是考虑对iOS7的适配,还是采用以前的方法。

基本方法:

1.创建searchbar

UISearchBar* searchBar = [[UISearchBaralloc]initWithFrame:CGRectMake(0,0,self.view.frame.size.width,44)];

searchBar.delegate=self;

2.设置tableview的headerview为searchbar

_tableView.tableHeaderView= searchBar;

2.把searchbar给uisearchdisplaycontroller

dc= [[UISearchDisplayControlleralloc]initWithSearchBar:searchBarcontentsController:self];

dc.searchResultsDataSource=self;

dc.searchResultsDelegate=self;

4.更改搜索背景和搜索文本背景

for(UIView*subviewinsearchBar.subviews) {

for(UIView* grandSonViewinsubview.subviews){

if([grandSonViewisKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {

grandSonView.alpha=0.0f;

}elseif([grandSonViewisKindOfClass:NSClassFromString(@"UISearchBarTextField")] ){

NSLog(@"Keep textfiedld bkg color");

searchBar.barTintColor= [UIColorblueColor];

grandSonView.backgroundColor= [UIColorredColor];

}else{

//grandSonView.alpha = 0.0f;

grandSonView.backgroundColor= [UIColorredColor];

}

}//for cacheViews

}//subviews

[searchBarsetSearchFieldBackgroundImage:[UIImageimageNamed:@"矢量智能对象"]forState:UIControlStateNormal];

UISearchController的方法:

参考文章

相关文章

网友评论

    本文标题:UISearchController

    本文链接:https://www.haomeiwen.com/subject/mteulttx.html