Значок закладки UISearchBar не скрывается при прокрутке - PullRequest
1 голос
/ 20 марта 2019

У меня есть UISearchBar, интегрированный в мою панель навигации с этим кодом:

// not needed because it's default
navigationItem.hidesSearchBarWhenScrolling = true

self.navigationItem.searchController = searchController

Также я добавляю пользовательский значок закладки, такой как:

searchController.searchBar.setImage(icon, for: .bookmark, state: .normal)
searchController.searchBar.showsBookmarkButton = true
searchController.searchBar.layoutIfNeeded()

Это страннопосмотрите в iOS 11.4 и 12.1.4

enter image description here

Кажется, что текстовое поле не обрезает значок и также не применяет анимацию исчезновениякак для заполнителя и значка поиска.

Ребята, вы видите какую-то ошибку на моей стороне?Если нет, может кто-то воспроизвести это?Тогда это ошибка, и я подам радар.

1 Ответ

1 голос
/ 20 марта 2019

Хорошо, я обошел проблему, выполнив это:

searchController.searchBar.allSubviews.forEach { $0.clipsToBounds = true }

Использование этого расширения для получения всех вложенных подпредставлений:

extension UIView {
    var allSubviews: [UIView] {
        return self.subviews.reduce([UIView]()) { $0 + [$1] + $1.allSubviews }
    }
}

Но это немного глупо, поэтому другие решения приветствуются:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...