我正在使用UISearchController
并且UISearchBar
还有一个范围栏。搜索栏作为子视图添加UIView
到UItableView
. 我这样做是因为我希望搜索栏始终可见,即使在滚动表格视图时也是如此。
问题是范围栏与第一个表格视图单元格重叠
故事板
范围栏与 tableview 单元格重叠
如何防止这种重叠?,我无法在导航栏中显示搜索栏,因为放置在导航栏中的范围栏不会显示。
我正在使用UISearchController
并且UISearchBar
还有一个范围栏。搜索栏作为子视图添加UIView
到UItableView
. 我这样做是因为我希望搜索栏始终可见,即使在滚动表格视图时也是如此。
问题是范围栏与第一个表格视图单元格重叠
故事板
范围栏与 tableview 单元格重叠
如何防止这种重叠?,我无法在导航栏中显示搜索栏,因为放置在导航栏中的范围栏不会显示。
这对我有用:
在 tableview 标题中具有 Search Display Controller 和 SearchBar。heightForHeaderInSection
在您的 TableViewController 中添加。
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
return 44; //I used the 44, the height of SearchBar
}
在您的情况下,您还需要添加范围栏高度。现在它将始终保持基本高度。
这对我有用:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
if (self.searchController.active) {
return 44; // with scope
} else {
return 0; // no scope
}
}
在 UIViewController 上添加搜索栏和表格视图,如下图所示。不要将搜索栏与表格视图重叠。我在我的应用程序中使用它,它对我来说工作正常。