在iOS 9+中更改UISearchBar文本颜色

时间:2015-10-28 12:11:27

标签: ios objective-c swift uikit uisearchbar

在iOS 7.x中,我们可以使用

[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil]
    setDefaultTextAttributes:@{NSForegroundColorAttributeName:myColor}];

但它在iOS 9中已被弃用。我所知道的唯一解决方案是迭代UISearchBar的子视图层次结构,查找UITextField并更改其属性。但这种方式被视为私有API使用

我们是否有合法方式更改iOS 9.x中的UISearchBar文字颜色?

1 个答案:

答案 0 :(得分:0)

您现在需要使用appearanceWhenContainedInInstancesOfClasses:

例如:

[[UITextField appearanceWhenContainedInInstancesOfClasses:@[[UISearchBar class]]] setTextColor:[UIColor whiteColor]];