在xib中添加UISearchBar作为tableHeaderView不起作用
  我说UISearchBar作为tableHeaderView为UITableView在厦门国际银行,通过只是删除UISearchBar到UITableView 。  当表格超过6行时,它工作正常。  但是当行少于6行时, UITableView不会滚动。 
  同时,如果我使用以下语句在.m文件中以编程方式将UISearchBar作为tableHeaderView添加为UITableView,则一切正常。 
tableViewTemp.tableHeaderView = searchBarFriends; 
看起来很奇怪,可能是什么问题?
请指教,谢谢。
这是我做的一个小窍门;)不要让你的SearchBar成为你的UITableView的子视图。 只需将它们的实例添加到您的nib文件中,并将它们作为IBOutlets连接到您的UITableViewController中即可。 然后你要做的就是将SearchBar设置为表格的标题视图,这样你就不必担心框架重叠并干扰触摸事件。 这是你如何做到的:
在TableView头文件中创建属性
@property ( nonatomic, retain ) IBOutlet UISearchBar *searchBar;
为你的表设置标题视图:
- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    return self.searchBar;  // The property you wired up in IB
}
设置标题或(UISearchBar)的高度
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    return 44; // The height of the search bar
}
这就是你需要的。 现在如果你有一个分组的tableview或者一个有多个部分的表格,但是它是一个简单表格的干净解决方案,这可能不是最好的解决方案。 否则,你必须调整搜索框的框架和代码中的tableview,因为它们重叠,这就是为什么你有触摸问题。 希望这可以帮助!
如果你添加像下面的层次结构的搜索栏,它将起作用

  我有几乎相同的问题(对我来说,它不会滚动任何行数,但它会一旦我删除搜索栏)。  修正了它在viewDidLoad添加: 
self.tableView.alwaysBounceVertical = YES;
