从iOS5到iOS 6的表格视图和搜索栏行为有何不同?

时间:2012-09-25 11:58:57

标签: cocoa-touch uitableview uisearchbar hidden floating

在我的应用程序中,我使用UITableView和SearchBar,没什么特别的。 SearchBar添加为tableHeaderView

self.searchDisplayController.searchBar.delegate = self;
     self.myTableView.tableHeaderView = self.searchDisplayController.searchBar;

我使用以下代码让SearchBar保持打开状态,以便在滚动时不会隐藏它。

- (void) scrollViewDidScroll:(UIScrollView *)scrollView {

    CGRect tableBounds = self.myTableView.bounds;
    CGRect searchBarFrame = self.searchDisplayController.searchBar.frame;

    self.searchDisplayController.searchBar.frame = CGRectMake(tableBounds.origin.x, tableBounds.origin.y, searchBarFrame.size.width, searchBarFrame.size.height);
} 

这在iOS5和iOS5.1中运行良好但在iOS6中不行,但我不知道发生了什么变化,有没有人有任何想法?

帮助将受到高度赞赏。

iOS5和iOS5.1中的SearchBar Searchbar in iOS5

隐藏了iOS6中的SearchBar Searchbar hidden in iOS6

1 个答案:

答案 0 :(得分:1)

我不确定为什么会改变它,但是在iOS 6上使用它是相当简单的。

不是将UISearchBar设置为tableHeaderView,而是使用普通UIView,然后将搜索栏添加为该视图的子项。