【发布时间】:2014-02-26 01:55:08
【问题描述】:
我需要实现搜索历史记录。所以我想做的是在尚未输入文本时在搜索显示控制器中显示历史记录。
我实现了这个:
-(void)searchDisplayControllerDidBeginSearch:(UISearchDisplayController *)controller{
self.searchDisplayController.searchResultsTableView.hidden=NO;
}
还有这个:
- (void)searchDisplayController:(UISearchDisplayController *)controller didHideSearchResultsTableView:(UITableView *)tableView{
self.searchDisplayController.searchResultsTableView.hidden=NO;
}
使表格始终显示。
我还实现了行数来区分案例:(我也处理了cellForIndexpath,但这里不需要显示)
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if ([self.searchDisplayController.searchBar.text isEqualToString:@""]) {
NSArray* d=[DropsAppDelegate getSharedInstance].userData.getLastSearches;
return d.count;
}
return [searchResultPlaces count];
}
但这会造成混乱。该表格显示在半透明屏幕的后面,并在退出搜索时变为可见。
当我实际输入内容时,该屏幕也不会关闭。
我该怎么做才能让UITableView 始终显示?
我查看了所有答案,但对 iOS7 没有任何帮助。
【问题讨论】:
标签: ios objective-c ios7 uisearchbar uisearchbardisplaycontrol