我使用a UIWebView
来显示应用程序中的内容,并希望更改使用选择控件时显示的完成按钮的颜色.
它目前显示为灰色的白色,很难看到.
"完成"按钮为白色,因为您可能将tintColor
所有UIBarButtonItems
使用设置为白色UIAppearance
.这会影响选择器视图中的"完成"按钮,它也恰好是一个UIBarButtonItem
.
因此,您必须从全局白色tintColor中排除选择器视图中的"完成"按钮.我不知道你是否只需要UIBarButtonItems
导航栏中的白色,但如果你这样做,你可以这样做只tintColor
在导航栏中设置栏按钮项目并UIBarButtonItems
保持其他所有不变:
UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UINavigationBar.self]).tintColor = UIColor.whiteColor()
但是,这仅适用于iOS9,并且appearanceWhenContainedIn
适用于旧版iOS 的旧方法在Swift中不可用.
因此,如果您正在使用Swift并且您必须定位早于iOS9的iOS版本,那么这可能不适合您.在这种情况下,您必须删除UIAppearance
白色的tintColor
设置tintColor
,并UIBarButtonItems
在不使用的情况下"手动"在导航栏中设置UIAppearance
.