В iOS 11 и 12 я не могу найти способ заставить панель поиска использовать всю ширину экрана.
navigationItem.searchController = searchController
Я могу добавить больше полей, используя:
let sb = searchController.searchBar
let selector = #selector(setter: UIScrollView.contentInset)
if sb.responds(to: selector) {
sb.perform(selector, with: UIEdgeInsets(top: 5, left: 0, bottom: 5, right: 35))
}
Если я пытаюсь установить влево и вправо на 0 ... он просто использует макет по умолчанию.
Редактировать:
Приближение:
for tf in sb.subviews.first!.subviews where tf is UITextField {
tf.translatesAutoresizingMaskIntoConstraints = false
tf.widthAnchor.constraint(equalToConstant: width).isActive = true
tf.layoutIfNeeded()
}
Теперь я пытаюсь найти способ применить ограничения, чтобы при активном текстовом поле оставалось место для кнопки отмены (UINavigationButton)