Можно ли изменить вертикальную позицию кнопки отмены в строке поиска? - PullRequest
0 голосов
/ 17 мая 2018

Я переместил панель поиска с UIView на navigationItem в UIViewController, когда обновлял приложение с 10 до 11 iOS SDK. Кроме того, я установил фоновое изображение в UISearchBar с вертикальным смещением, поскольку расстояние между логотипом и строкой поиска было небольшим.

search is not active

searchBar.setSearchFieldBackgroundImage(searchFieldImage, for: .normal)
searchBar.searchFieldBackgroundPositionAdjustment = UIOffset(horizontal: 0, vertical: 4)

Но я не могу правильно расположить кнопку Отмена по вертикали. Как установить вертикальное положение кнопки «Отмена» в UISearchBar или заголовка в кнопке?

search is active

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Доступ к кнопке отмены осуществляется следующим образом: -

UIBarButtonItem *cancelButton = [UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil];

Теперь попробуйте обновить кадр (ось Y) для cancelButton.

0 голосов
/ 17 мая 2018

Вы можете увеличить строку поиска SearchBar heightAnchor.constraint, чтобы увеличить высоту панели навигации, чтобы исправить проблему с изображением логотипа, отметьте ее

В IOS 11

searchController.searchBar.heightAnchor.constraint(equalToConstant: 50).isActive = true
...