Вам нужно установить фрейм UISearchBar в какой-то момент.
e.x.
UISearchBar *searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, 200, 20)];
РЕДАКТИРОВАТЬ: Относительно артефакта в виде кнопки под UISearchBar
Кнопка-y, которую вы видите под UISearchBar
, на самом деле является фоновым элементом UISearchBar
, а не результатом поиска, перекрывающего UIBarButtonItem
. Поскольку, похоже, нет хорошего способа скрыть это (и я надеюсь, что кто-то может прийти и поправить меня), я могу указать вам только направление хак , которое сопряжено с обычными опасностями. зависимости от версии SDK, неравенства и потенциальной возможности возникновения головной боли.
РЕДАКТИРОВАТЬ 2: Другое потенциальное решение
Вы также можете установить высоту рамки вашего UISearchBar на 44 (высота панели навигации), и тогда фон должен хорошо сочетаться с панелью навигации. Исходя из этого ТАКОГО поста, который я недавно видел.