У меня firstVC в качестве homeController, который имеет экземпляр UISearchBar и реализует его делегат (UISearchBarDelegate), и при этом создается экземпляр secondVC, который называется searchController, и его делегат также находится в другом экземпляре UISearchBar. нужно исправить эту избыточность. Я использую homeController UISearchBarDelegate только потому, что он позволяет мне создавать экземпляр 'searchController'.
1: я использую метод для экземпляра searchBarShouldBeginEditing для 'homeController', и, возможно, он неправильный, потому что первая секунда правильно загружает цвет, а затем меняется на черный.
2: сам цикл searchBarTextDidBeginEditing. (от цвета, который я хочу, чтобы снова цвет, который я хочу). - (бесконечный цикл)
Я могу использовать только один за раз или searchBarShouldBeginEditing или searchBarTextDidBeginEditing. Я хотел бы использовать поведение searchBarTextDidBeginEditing, но он перезагружается как сумасшедший. Или в первую секунду searchBarShouldBeginEditing и узнайте, где находится приложение в состоянии этого черного экрана, потому что определенно это не цвет по умолчанию, который я установил, потому что он меняет нужный мне цвет в первую секунду и во вторую секунду оно черное. Кстати, приложение не использует UISearchBar из 'searchController', оно использует UISearchBar из 'homeController'. Что рекомендуется?
Просто тут я получил два очка.
1: Должен ли я отделить логику, как делаю, или смешать ее?
1.1: дом и поиск имеют разные ячейки, поэтому я не смешиваю их. Как я могу использовать экземпляр UISearchBar для 'searchController'?
2: Если я буду держать его отдельно, я должен использовать UISearchBar из 'searchController' или удалить этот экземпляр и просто использовать 'homeController'?
как правильно реализовать или создать экземпляр UISearchBar с текущим сценарием?
func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool {
handleShowSearchVC()
return false
}
@objc func handleShowSearchVC() {
let modalUserSearchController = UserSearchController(collectionViewLayout: UICollectionViewFlowLayout())
modalUserSearchController.modalPresentationStyle = .overCurrentContext
navigationController?.pushViewController(modalUserSearchController, animated: true)
}
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
handleShowSearchVC()
}