Swift 更改UISearchBar取消按钮的字体样式
我正在尝试将UISearchBar取消按钮的字体更改为“OpenSAN”,但无法访问任何属性。我只能更改UISearchBar的色调,这会更改搜索栏“取消”按钮文本和搜索栏UITextField光标的颜色:Swift 更改UISearchBar取消按钮的字体样式,swift,Swift,我正在尝试将UISearchBar取消按钮的字体更改为“OpenSAN”,但无法访问任何属性。我只能更改UISearchBar的色调,这会更改搜索栏“取消”按钮文本和搜索栏UITextField光标的颜色: searchBar.tintColor = UIColor(red: 187.0/255.0, green: 187.0/255.0, blue: 187.0/255.0, alpha: 1.0) 有没有办法做到这一点 试试这样的东西,对我很管用 UIBarButtonItem.appe
searchBar.tintColor = UIColor(red: 187.0/255.0, green: 187.0/255.0, blue: 187.0/255.0, alpha: 1.0)
有没有办法做到这一点 试试这样的东西,对我很管用
UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UISearchBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont(name: "OpenSans", size: 15)!], forState: .Normal)
如果还想更改颜色,请将其添加到属性数组中
NSForegroundColorAttributeName : UIColor.whiteColor()
注意:iOS 9中提供了swift 2:
if #available(iOS 9.0, *) {
UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UISearchBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont.systemFontOfSize(15, weight: UIFontWeightLight)], forState: .Normal)
} else {
// Fallback on earlier versions
}
迅捷3:
UIBarButtonItem.appearance(whenContainedInInstancesOf: [UISearchBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont(name: "OpenSans", size: 15)!], for: .normal)
目标C:
[[UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor blueColor],
UITextAttributeTextColor,
[UIColor darkGrayColor],
UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, -1)],
UITextAttributeTextShadowOffset,
nil]
forState:UIControlStateNormal];
这是Swift 3.0版的
UIBarButtonItem.appearance(whenContainedInInstancesOf: [UISearchBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont(name: "OpenSans", size: 15)!], for: .normal)
Swift 4.2
UIBarButtonItem.appearance(whenContainedInInstancesOf: [UISearchBar.self]).setTitleTextAttributes([NSAttributedString.Key.font : UIFont(name: "your_font_name", size: 16)!], for: .normal)
你不会碰巧有这样的斯威夫特吧?很漂亮,伙计。谢谢。您可能需要注意的是,“AppearanceWhenContainedInstancesofClass”仅适用于iOS 9.0>@JLO我不确定您的意思,这是swift。