[问题] UISearchBar 点击取消后跳动的问题

问题详情:

        首先是TableView 作为 NavigationController 的 RootViewContrller, 然后UISearchBar

     添加到TableView 的 headView 上,同时 UISearchDisplayController 的 contentsController

         为tableView, SearchBar 为tableView headview 上的 searhBar,然后点击后 searchBar 会平滑

         移动到 NavgationBar 的位置,点击取消或蒙版的,searhBar 会跳动下再回到正确的位置。

解决办法:

        在控制器的viewdidload: 中加入

      

    [self setAutomaticallyAdjustsScrollViewInsets:YES];
    [self setExtendedLayoutIncludesOpaqueBars:YES];
    

查找原因过程:

        首先是看到 FontAwesome 的搜索没有问题然后就看其实现,没有改变UINavigationBar的默认颜色,

   没有UINavigationItem,然后就将其全部注释,然后问题依然, 再 设置UINavigationBar 的 translucent 属性

   为YES,接着打开 UINavigationBar 的背景色,然后问题又出现了,由于背景色要同时设置状态栏的颜色,所以设置代码为

    [[UINavigationBar appearance]setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

        同时不使用 图片的方式,通过遍历系统子控件设UINavigationBar 的设置背景色同样也会导致跳动,

        问题就可能是系统SDK的问题了,猜测而已。。然后就各种关键词搜。。最后。。。

详情解释:

http://stackoverflow.com/questions/20565980/uisearchbar-in-uitableviewheader-strange-animation-on-ios-7

 

 

 
 
posted @ 2014-10-29 11:58  skyming  阅读(10938)  评论(0编辑  收藏  举报