我尝试获取UITextField的文本样式。我在Interface Builder中的属性检查器中设置了样式(字体文本样式 - 子标题)。
在我的应用中尝试对字体大小更改做出反应。他们需要文字风格。
他们是一种检索此信息的方法。我不想在代码中设置文本样式,因为我开发了一个可以在IB中使用的可重用组件
答案 0 :(得分:2)
查看UITextFIeld Class reference和UIFont Class reference
@IBOutlet var textField: UITextField!
...
let fontInfo = textField.font
println(fontInfo.fontName)
println(fontInfo.familyName)
println(fontInfo.pointSize)
let textStyle = fontInfo.fontDescriptor().fontAttributes()["NSCTFontUIUsageAttribute"] as String
switch textStyle {
case UIFontTextStyleBody:
println("Body")
break
case UIFontTextStyleCaption1:
println("Caption1")
break
case UIFontTextStyleCaption2:
println("Caption2")
break
case UIFontTextStyleFootnote:
println("Footnote")
break
case UIFontTextStyleHeadline:
println("Headline")
break
case UIFontTextStyleSubheadline:
println("SubHeadline")
break
default:
println("Default")
break
}