Я использую UISearchController в iOS 8, и когда я делаю его UISearchBar в заголовке моей таблицы, все в порядке. Однако теперь мне это нужно в левой кнопке панели UINavigationBar (это не может быть вид заголовка из-за вертикального центрирования, когда я увеличиваю панель навигации). Когда я оборачиваю UISearchBar в UIBarButtonItem, он больше, чем ширина экрана.
Я думаю, что это связано с моим контроллером представления, инициализированным из раскадровки с включенными классами размера, что означает, что мои кадры не установлены до viewDidLayoutSubviews
. Однако у меня была такая же проблема с моим сегментированным элементом управления на панели инструментов, и я просто вызвал sizeToFit
на панели инструментов в viewDidLayoutSubviews
, и это исправило панель инструментов. Когда я делаю то же самое для панели поиска, она все еще частично выводится за пределы экрана. Apple делает это в некоторых своих приложениях для iPad, но как?
Примечание. Я могу взломать его, чтобы вывести все на экран, но мне нужно обернуть его в другом представлении, но тогда цвет отключается, и это кажется неправильным, и я думаю, что анимация отключена.