我正在尝试添加一个pull来刷新我的表视图控制器,所以我已经处理了功能,然后我正在进行布局。功能完美但我有一些与布局有关的问题,我想改变标题的字体和字体颜色。我在故事板上的刷新控制器的属性上更改了它们,但每次运行项目时,我的所有设置都恢复为默认值。所以,我尝试使用代码处理它们,现在我可以更改背景和tintColor,但我无法更改字体和颜色。能帮帮我吗,这是我的代码:
refresh.backgroundColor = UIColor(red: 220/255, green: 220/255, blue: 220/255, alpha: 1)
refresh.tintColor = UIColor(red: 155/255, green: 155/255, blue: 154/255, alpha: 1)
var label:NSAttributedString = NSAttributedString(string: "Refresh!!!")
refresh.attributedTitle = label
谢谢,
答案 0 :(得分:14)
我看到这个问题很老了,但万一有人在找到答案时偶然发现了这个问题。
颜色是属性字符串的一部分,通过属性字典设置。
let attributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]
let attributedTitle = NSAttributedString(string: "title", attributes: attributes)
refreshControl.attributedTitle = attributedTitle
字体也是如此。
[NSFontAttributeName: UIFont(name: fontName, size: size)]
答案 1 :(得分:4)
Swift 4:
let attributes = [NSAttributedStringKey.foregroundColor: UIColor.white]
refreshControl.attributedTitle = NSAttributedString(string: "Refreshing please wait", attributes: attributes)
答案 2 :(得分:2)
斯威夫特3:
let attributes = [NSForegroundColorAttributeName: UIColor.white, NSFontAttributeName: UIFont.systemFont(ofSize: 12)]
refreshControl.attributedTitle = NSAttributedString(string: "Test text", attributes: attributes)
答案 3 :(得分:0)
快捷键5:
let attributes = [NSAttributedString.Key.foregroundColor: UIColor.white]
refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh", attributes: attributes)