我从一开始就将setShowsScopeBar设置为TRUE,这非常有效。但是一旦我搜索了某些东西然后取消了我的搜索,范围栏就会消失。
How to keep scopebar even after pressed Cancel button?
显然,在早期版本中,使用UISearchBar,
- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar
{
[searchBar setShowsScopeBar:YES];
return YES;
}
这很有用。但是使用SearchController,情况已经不再适用了。
我试过这个:
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar {
searchController.searchBar.showsScopeBar = YES;
[searchController.searchBar sizeToFit];
isSearching = NO;
}
没有运气。
iOS 9上是否有任何可能的解决方案?
答案 0 :(得分:0)
元素是具有UISegmentedControlStyleBar样式的UISegmentedControl。您可以设置tintColor属性以获取所需的颜色。只需将视图放在表格视图上方,您就可以获得看起来像截图的内容。
答案 1 :(得分:0)
除非你使用一些黑客,否则没有直接方法可以保持范围栏始终可见。
而是使用看起来像范围栏的UISegmentedControl
。然后根据所选的段处理
- updateSearchResultsForSearchController:
中搜索结果的过滤。