您当前的位置: 首页 >  搜索

iOS中UISearchBar首次搜索时抖动的解决

发布时间:2018-07-03 08:28:40 ,浏览量:0

UISearchBar对于iOS中的搜索功能来说是非常有用的,一般来说它和UISearchController配合来用简直美美哒 ;)

通常SearchBar是放在UITableView的头部,但也不尽然。

对于我的需求来说我把它放到了UITableView的第一个Cell里:

func setupSearchController(){

    //custom Search Results Controller
    let folderSearchVC = FolderSearchViewController()
    searchController = UISearchController(searchResultsController: folderSearchVC)

    //cancel hide NavigationBar
    searchController.hidesNavigationBarDuringPresentation = false

    searchController.searchResultsUpdater = folderSearchVC
    searchBar = searchController.searchBar searchBar.placeholder = "搜索习惯组" //放到第一个Cell里
    firstCell.contentView.addSubview(searchBar)
  }

但是在第一次搜索的时候,其中的placeholder内容总会顽皮的略微向上跳一下,真是让我欢喜让我忧:

![这里写图片描述](https://img-blog.csdn.net/2018070308250766?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215ZG8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 如上图!注意,这个问题只在第一次点击SearchBar时会出现,随后都正常! 虽说这只是一个小的“瑕疵”(这取决你怎么看,你可能认为这很活泼,很好…),但拥有强迫症天猫座的我怎能忍受… 解决起来很简单,只要关闭显示cancel按钮的动画即可:
func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool { //消除第一次点击搜索bar,其中placeholder文字发生向上跳动的情况
    searchBar.setShowsCancelButton(true, animated: false) return true }

That’s All OK ;)

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0495s