4
Я пытаюсь установить цвет текста кнопки «Отмена» рядом со строкой поиска в Swift. Это код, который у меня есть:Установить цвет текста кнопки отмены для строки поиска (Swift)
func searchDisplayControllerWillBeginSearch(controller: UISearchDisplayController) {
self.searchDisplayController?.searchBar.showsCancelButton = true
var cancelButton: UIButton
var topView: UIView = self.searchDisplayController?.searchBar.subviews[0] as! UIView
for subView in topView.subviews {
if subView.isKindOfClass(NSClassFromString("UINavigationButton")) {
cancelButton = subView as! UIButton
cancelButton.setTitleColor(UIColorFromRGB(0x0096FF), forState: UIControlState.Selected)
cancelButton.setTitleColor(UIColorFromRGB(0x0096FF), forState: UIControlState.Normal)
}
}
}
Он работает для выделенного состояния, но не работает для нормального состояния. Я знаю, что в Objective-C я мог использовать appearanceWhenContainedIn
, но этого не существует в Swift.
Любые идеи?
Вы пробовали это: http://stackoverflow.com/a/27807417/765298? – Losiowaty
«Я знаю, что в Objective-C я мог использовать внешний видWonContainedIn, но этого не существует в Swift». Фактически, в Swift 2.0 он существует. – matt
Я не использую 2.0 прямо сейчас, но я использовал технику @ Losiowaty, и она отлично работает! Благодарю. – user3746428