Белая линия над UISearchDisplayController - PullRequest
3 голосов
/ 01 июня 2011

У меня проблема с контроллером uisearchdisplay.Если я добавлю панель поиска контроллера в представление заголовка таблицы, она отобразит тонкую белую линию над панелью поиска!Если я добавлю панель поиска без контроллера поиска, она будет отображаться правильно.Важно, чтобы вы действительно внимательно посмотрели на стандартный контроллер searchdisplaycontroller или немного изменили его, иначе вы не сможете увидеть линию.

Кто-нибудь знает способ избежать белой линии?

Код в методе init BaseViewController: 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: BaseViewController в viewWillAppear

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реализация, потому что, если вы используете только панель поиска, все в порядке

1 Ответ

4 голосов
/ 27 июня 2012

комплект searchBar.clipsToBounds = YES;

...