将 "Rockwell" 字体应用于属性字符串时遇到问题
Having trouble applying the "Rockwell" font to an attributed string
我正在尝试创建一个属性,我可以根据需要将其应用于几个不同的按钮标题。我需要属性来应用 "Rockwell" 类型的 35 号字体,我自己的自定义颜色 "specialYellow",带有下划线。我在尝试让它应用 "Rockwell" 字体时遇到了麻烦,因为它显然不是 UIFont 颜色。
let underlineAttribute:[NSAttributedString.Key: Any] = [
.font: UIFont.systemFont(ofSize: 35),
.foregroundColor: ColorManager.specialYellow,
.underlineStyle: NSUnderlineStyle.single.rawValue]
我认为我需要将 "UIFont.systemFont" 更改为 "UIFont.Rockwell" 之类的其他内容,但 swift 不接受。
你只需要使用 UIFont(name: size:)
初始化器
init?(name fontName: String, size fontSize: CGFloat)
但您需要将字体粗细与其名称一起传递:
let rockwellRegular = UIFont(name: "Rockwell-Regular", size: 35)
你的情况:
let underlineAttribute: [NSAttributedString.Key: Any] = [
.font: UIFont(name: "Rockwell-Regular", size: 35),
.foregroundColor: ColorManager.specialYellow,
.underlineStyle: NSUnderlineStyle.single.rawValue]
我正在尝试创建一个属性,我可以根据需要将其应用于几个不同的按钮标题。我需要属性来应用 "Rockwell" 类型的 35 号字体,我自己的自定义颜色 "specialYellow",带有下划线。我在尝试让它应用 "Rockwell" 字体时遇到了麻烦,因为它显然不是 UIFont 颜色。
let underlineAttribute:[NSAttributedString.Key: Any] = [
.font: UIFont.systemFont(ofSize: 35),
.foregroundColor: ColorManager.specialYellow,
.underlineStyle: NSUnderlineStyle.single.rawValue]
我认为我需要将 "UIFont.systemFont" 更改为 "UIFont.Rockwell" 之类的其他内容,但 swift 不接受。
你只需要使用 UIFont(name: size:)
初始化器
init?(name fontName: String, size fontSize: CGFloat)
但您需要将字体粗细与其名称一起传递:
let rockwellRegular = UIFont(name: "Rockwell-Regular", size: 35)
你的情况:
let underlineAttribute: [NSAttributedString.Key: Any] = [
.font: UIFont(name: "Rockwell-Regular", size: 35),
.foregroundColor: ColorManager.specialYellow,
.underlineStyle: NSUnderlineStyle.single.rawValue]