Мое приложение содержит автономную панель UINavigationBar с «элементом левой кнопки» и «элементом правой кнопки». Согласно нашему требованию, между левой и правой кнопками на панели навигации требуется панель поиска. Я установил в строке поиска UISearchController заголовок UINavigationItem, как показано ниже
self.navigationItem.TitleView = self.searchController.SearchBar
Для версий iOS ниже 12.0, панель поиска прекрасно вписывается между кнопками «назад» / «вперед» на панели навигации и без проблем принимает нажатия клавиш.
Для версий iOS 12+ при нажатии на панель поиска панель поиска немного опускается . Я попробовал следующие строки кода, но безрезультатно. Любые предложения относительно решений будут полезны.
[self.searchController.searchBar sizeToFit];
self.searchController.hidesNavigationBarDuringPresentation = NO;
[self.navigationBar setPrefersLargeTitles:YES];
[self.navigationItem setLargeTitleDisplayMode:UINavigationItemLargeTitleDisplayModeAlways];
self.definesPresentationContext = YES;
self.extendedLayoutIncludesOpaqueBars = YES;