У меня есть UINavigationItem, и я хочу добавить UISearchBar к нему. Вот как я делаю, что:UISearchBar в iOS 8 - перемещение пользовательского интерфейса
let searchBar = UISearchBar(frame: CGRectMake(0, 0, self.navigationController!.navigationBar.bounds.width, self.navigationController!.navigationBar.bounds.height))
//searchBar.sizeToFit()
searchBar.showsCancelButton = true
let barWrapper = UIView(frame: searchBar.frame)
barWrapper.addSubview(searchBar)
self.navigationItem.titleView = barWrapper
Вот результат:
Что здесь не так?
P.S. UISearchBar является подклассом UIView, поэтому вам, вероятно, не нужно помещать его в другой UIView, прежде чем устанавливать его в titleView. – spongessuck
Смотрите мой обновленный код - то же смещение –
Не будет никакого значения, что вы инициализируете его кадром, если впоследствии вы вызовете sizeToFit(). sizeToFit() изменяет кадр. – spongessuck