我遇到了uisearchdisplaycontroller的问题。 如果我将控制器的搜索栏添加到tableviews标题视图,它会在搜索栏上方显示一条细白线!如果我添加没有搜索控制器的搜索栏,它会正确显示它。重要的是你要仔细查看标准的searchdisplaycontroller或稍微自定义它,否则你将无法看到该行。
有谁知道避免白线的方法?
BaseViewController的init方法中的代码:UIViewController
searchBar = [[UISearchBar alloc] initWithFrame:CGRectZero];
[searchBar sizeToFit];
searchBar.showsCancelButton = NO;
searchBar.barStyle = UIBarStyleDefault;
searchBar.hidden = NO;
searchBar.delegate = self;
searchBar.placeholder = @"Suche";
searchCtrl = [[UISearchDisplayController alloc]
initWithSearchBar:searchBar contentsController:self];
searchCtrl.delegate = self;
searchCtrl.searchResultsDataSource = self;
searchCtrl.searchResultsDelegate = self;
[searchCtrl searchResultsTableView].scrollsToTop = NO;
StartViewController中的代码:viewWillAppear中的BaseViewController
tableController.tableView.tableHeaderView = searchCtrl.searchBar;
searchBar.hidden = NO;
if ( [tableController.tableView contentOffset].y == 0.0 )
{
[tableController.tableView setContentOffset:CGPointMake(0.0, 44.0) animated:NO];
}
没什么特别的,对我而言,它与UISearchDisplayController有关,而不是实现,因为如果你只使用搜索栏一切都很好
答案 0 :(得分:4)
设置searchBar.clipsToBounds = YES;