Можно ли изменить цвет текста в строке поиска? Я, кажется, не имеют доступа к классу UISearchBarTextField ...Изменить цвет текста строки поиска ios
ответ
во-первых, вы найдете подвид в UISearchBar
, а затем найти UITextField
в подэкранном View затем изменить цвет
Попробуйте этот код: -
for(UIView *subView in searchBar.subviews){
if([subView isKindOfClass:UITextField.class]){
[(UITextField*)subView setTextColor:[UIColor blueColor]];
}
}
для Ios 5 +
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] setTextColor:[UIColor blueColor]];
с прошивкой 5, правильный способ сделать это с помощью протокола внешнего вида.
Например:
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] setTextColor:[UIColor blueColor]];
Отличный ответ. благодаря – Nekto
Вы можете установить атрибуты, как это так, называем это в контроллере.
[[UITextField appearanceWhenContainedIn:[self class], nil] setDefaultTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor], NSFontAttributeName:[UIFont systemFontOfSize:14]}];
* обратите внимание, что это изменит все UITextFields в контроллере
оригинальный UISearchBar
иерархия не изменилась исходным сообщение и UITextField
больше не является прямой подтаблица. В приведенном ниже коде не делается никаких предположений об иерархии UISearchBar
.
Это также полезно, если вы не хотите менять цвет текста строки поиска во всем приложении (т. Е. Используя appearanceWhenContainedIn).
/**
* A recursive method which sets all UITextField text color within a view.
* Makes no assumptions about the original view's hierarchy.
*/
+(void) setAllTextFieldsWithin:(UIView*)view toColor:(UIColor*)color
{
for(UIView *subView in view.subviews)
{
if([subView isKindOfClass:UITextField.class])
{
[(UITextField*)subView setTextColor:color];
}
else
{
[self setAllTextFieldsWithin:subView toColor:color];
}
}
}
Использование:
[MyClass setAllTextFieldsWithin:self.mySearchBar toColor:[UIColor blueColor]];
- 1. iOS: Как частично изменить цвет текста
- 2. Как изменить цвет текста строки поиска в swift tvOS
- 3. Как изменить цвет текста поиска в UISearchBar?
- 4. Изменить цвет текста SFSafariViewController?
- 5. Изменить цвет текста UIDatePicker
- 6. Изменить Picker Цвет текста
- 7. RadGridView изменить цвет текста
- 8. Изменить цвет текста Python
- 9. Как изменить цвет строки редактирования текста?
- 10. изменить цвет строки на основе текста
- 11. Изменить цвет текста определенной строки в ListView
- 12. Как изменить цвет текста строки состояния?
- 13. Как изменить цвет нижней строки текста редактирования?
- 14. Изменить цвет текста GMail в середине строки
- 15. Изменить цвет подсветки пошагового поиска
- 16. Изменить цвет текста существующего текста
- 17. Невозможно изменить цвет текста cordovaStatusbar
- 18. Изменить цвет текста при вводе
- 19. Как изменить поиск текста Цвет текста
- 20. Как изменить цвет поиска?
- 21. Как изменить цвет строки состояния imagepickercontroller ios?
- 22. Изменить Цвет ярлыка строки состояния в ios
- 23. Изменить цвет выделения текста
- 24. Изменить цвет текста кнопки
- 25. Изменить цвет текста TextView
- 26. jQuery: Изменить цвет текста
- 27. Изменить цвет текста кнопки
- 28. JQuery Изменить цвет текста
- 29. RadioButton изменить цвет текста
- 30. Изменить цвет текста вкладок
делая это таким образом, вероятно, будет работать, но хрупким в случае яблоко решает играть с точки зрения иерархии, пожалуйста, см мое решение ниже с использованием протокола внешнего вида. –