【发布时间】:2014-12-29 22:39:40
【问题描述】:
我正在尝试获取一个搜索栏,它是导航栏中的范围,就像视图首次出现的方式一样。如果您只是将 UISearchBar 拖到界面构建器中的表格视图控制器上,它就会像标题单元格一样放置在您的表格中。然后,当你点击它时,它会动画成我在下面的阵型。问题是我希望它以这种方式开始而无需任何点击,左侧有一个后退按钮,右侧没有取消按钮:
因此,为了在不点击的情况下立即获得搜索栏的焦点,我尝试在 viewDidLoad 中添加 [_searchBar becomeFirstResponder];,但这不起作用。接下来我尝试了:
self.searchDisplayController.displaysSearchBarInNavigationBar = YES;
搜索栏确实会显示在导航栏中,但范围栏不见了,(WHY APPLE WHY)并且有一个尴尬的差距。
我也尝试过继承 UINavigationBar 并使其更高。更改它的大小很容易,但内容在栏的底部对齐,并与您尝试添加的任何内容重叠。
所以要重新迭代,当视图首次出现时,我需要在导航栏中显示搜索栏并带有范围控件,而无需用户点击。我还应该指定这是在 UITableViewController 上(因为页面有一个 UIRefreshConrol),所以简单地将工具栏放在表格视图上方不是一个选项。谢谢。
【问题讨论】: