我有一个奇怪的要求,或者至少我之前从未做过的事情......我有一个UITableView
,该表的标题是UISearchBar
。如果您点击该搜索栏,则会显示“搜索显示控制器”并让您搜索...但现在我需要删除该搜索栏并从按钮调用“搜索显示控制器”。
问题是如果我在调用时(从按钮)删除了SearchBar:
[self.searchDisplayController setActive:YES animated:YES]
我无法在View上看到UISearchBar。
我不知道如何解决这个问题......我已经尝试过了:
self.tableView.tableHeaderView = nil
,当我触摸按钮时,我再次将UISearchBar设置为表头...它看起来很丑陋,动画也不流畅。UISearchBar
首先显示在标题中并且它已移动到视图的顶部... 任何帮助都将受到欢迎! 谢谢!
答案 0 :(得分:4)
我意识到你已经尝试过了,但这就是我们这样做的方式并且有效:
我们将UISearchBar添加到视图中(而不是表视图)。尽管如此,如果您使用的是UITableViewController,则无法执行此操作。您必须将tableView添加到UIViewController。然后我们通过Outlet将它链接到Controller,然后在viewDidLoad中隐藏它:
self.searchBar.hidden = YES;
然后创建一个选择器以再次显示searchBar:
- (IBAction)search:(id)sender
{
self.searchBar.hidden = NO;
[self.searchBar becomeFirstResponder];
[self.searchDisplayController setActive:YES animated:YES];
}
希望有所帮助。