使用SearchDisplayController在UINavigatioBar titleView中的UISearchBar

时间:2014-07-17 13:14:02

标签: ios uinavigationbar uisearchbar uisearchdisplaycontroller

我正在尝试在导航栏的标题视图中创建一个搜索栏(以及左侧和右侧的一些按钮),其功能应该像Facebook iOS搜索栏一样。

我遇到的问题是当我点击搜索栏时,searchResultsTableView从不显示。

@property (strong, nonatomic) UISearchBar *searchBar;
@property (strong, nonatomic) UISearchDisplayController *searchController;

在我的viewDidLoad中我有

self.searchBar = [[UISearchBar alloc]init];
self.searchBar.delegate=self;
self.searchController=[[UISearchDisplayController alloc] initWithSearchBar:self.searchBar
                                                        contentsController:self];
self.searchController.delegate=self;
self.searchController.searchResultsDataSource = self;
self.searchController.searchResultsDelegate =self;

self.navigationItem.titleView = self.searchBar;

点击它时不会显示结果表视图,也不会展开栏。

但是,如果我将searchBar放在表的headview中,一切都运行得很好:

self.tableView.tableHeaderView = self.searchBar;

我也尝试过:

self.searchController.displaysSearchBarInNavigationBar = YES;

但它没有将搜索栏扩展到整个navigationBar,并且在第一次之后无法调暗/调出resultsTableView。

非常感谢任何澄清/帮助:)

谢谢,

0 个答案:

没有答案