1
私たちのコードをiOS 11に採用すると、私はUINavigationControllerに配置されたUISearchbarに苦労しています。 私はこのようなSearchController /検索バーを設定しますののbackgroundColorを変更 :私たちのデフォルトの色を使用する場合iOS 11の間違った位置にあるUISearchBar
self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
self.searchController.searchBar.scopeButtonTitles = @[@"foo", @"bar"];
self.searchController.searchBar.showsScopeBar = YES;
self.searchController.searchResultsUpdater = self;
self.searchController.searchBar.delegate = self;
self.searchController.delegate = self;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.hidesNavigationBarDuringPresentation = NO;
self.definesPresentationContext = YES;
if (@available(iOS 11.0, *))
{
self.navigationItem.searchController = self.searchController;
self.navigationItem.hidesSearchBarWhenScrolling = YES;
UISearchBar *searchbar = self.searchController.searchBar;
[searchbar setSomeColors];
}
、物事はOKに見えるかもしれませんが、検索バーとScopeButtonsの間のスペースは少し大きすぎるかもしれません検索バーが間違っていることを明らかにします。
したがって、UISearchBarはスーパービューでは高すぎます。誰もが知っている、iOS 11でこの動作の原因は何ですか?
を参照してください以来存在し、あなたを得るより多くのclarification.Iくぼみを必要としてください、わかりませんでした。 – nikhil
UISearchBarには、私が必要とするsearchFieldBackgroundPositionAdjustmentというプロパティがあります。このプロパティを指定されたオフセットに設定するだけです。 – Tobias