iOS 8:UIButton外观字体



尝试使用iOS8中的外观为所有按钮设置UIButton的字体。谷歌搜索后,苹果似乎已经从操作系统改变了操作方式。在iOS 7中,这本应有效:

    UIButton.appearance().titleLabel?.font = UIFont.inviteButtonTitleFont()

但它似乎已经不起作用了。有人知道你现在是怎么做的吗?

Swift 3:

let fontRegular = UIFont(name: "MyCustomRegularFont", size: 17.0)
UILabel.appearance(whenContainedInInstancesOf: [UIButton.self]).font = fontRegular
UIButton.appearance().tintColor = UIColor.red

字体的代理已从UILabel.appearance()中删除,所以这就是为什么不起作用的原因。

UILabel 上的方法中包含时使用外观

UILabel.appearanceWhenContainedInInstancesOfClasses([UIButton.self]).font = UIFont.inviteButtonTitleFont()

这应该在iOS9中有效,请参阅Swift中出现的答案WhenCainedIn中的iOS8和7解决方案。

(免责声明,我还没有编译代码片段,所以要小心拼写错误)。

最新更新