【问题标题】:UISearchBar slides away when tapped点击时 UISearchBar 会滑开
【发布时间】:2016-05-04 10:51:12
【问题描述】:

我有一个搜索栏作为导航栏的标题视图。

它看起来像这样,我希望它看起来像这样:

但是当我点击它时,它只是滑到顶部并且变得无法访问

这是我用来配置它的代码:

- (void)configureSearchBar
{
    self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
    self.searchController.searchBar.delegate = self;
    self.navigationItem.titleView = self.searchController.searchBar;
}

有没有办法解决这种问题?

【问题讨论】:

  • 你实现了通知方法-(void) keyboardWillShow:(NSNotification *)notification 吗?或者您正在更改搜索栏的任何委托方法中的框架。
  • 只要搜索栏可见,@ShehzadAli 键盘就会显示。我的意思是点击后有片刻,搜索栏向上移动。当搜索栏完全滑动时,键盘也会消失。所以我认为没有必要实现这个方法。
  • 删除这一行,看看会发生什么self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
  • @J.Lopes 搜索栏消失了。
  • configureSearchBar 是关于搜索栏的所有代码吗?您是否尝试过记录 searchController 框架? NSLog(@"%@", NSStringFromCGRect(@"FRAME HERE"));?

标签: ios objective-c iphone uinavigationbar uisearchbar


【解决方案1】:
self.searchController.hidesNavigationBarDuringPresentation = NO

添加此行已解决此问题或我。这个问题的原因是我的搜索栏被设置为我的导航栏的标题视图,属性hidesNavigationBarDuringPresentation默认设置为YES。将此属性设置为NO 即可解决此类问题。

【讨论】:

    猜你喜欢
    • 2016-11-19
    • 1970-01-01
    • 1970-01-01
    • 2014-08-22
    • 2012-06-12
    • 2014-11-24
    • 2023-03-15
    • 2017-02-01
    • 2013-12-27
    相关资源
    最近更新 更多