UISearchBar'提示'未正确显示

时间:2017-12-20 16:03:50

标签: ios uisearchbar

我已经设置了一个UISearchBarController,如下所示:

self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
self.searchController.searchBar.delegate = self;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.searchBar.prompt = @"Searching Transactions Since Nov 11 2017";
self.searchController.searchBar.placeholder = @"Search";

这是设置.prompt

的输出

enter image description here

这就是视图呈现和滚动期间的外观。 prompt应显示在搜索栏上方,如the HIG中所示。

有谁知道为什么会这样做?这是一个错误吗?或者prompt仅在设置单独的搜索控制器时才能正确显示?

1 个答案:

答案 0 :(得分:0)

不确定这是UISearchBar上的错误,但是您可以添加偏移量:

self.searchController.searchBar.searchFieldBackgroundPositionAdjustment = UIOffsetMake(0, 20);

如果您有取消按钮:

UIBarButtonItem *cancelButton = [UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil];
[cancelButton setTitlePositionAdjustment:UIOffsetMake(0, 20) forBarMetrics:UIBarMetricsDefault];