★ フォントの生成(標準,12)
let font = UIFont.systemFontOfSize(12)
★ フォントの生成(太字,12)
let font = UIFont.boldSystemFontOfSize(12)
★ フォントの生成(斜体,12)
let font = UIFont.italicSystemFontOfSize(12)
★ フォントの生成(Helvetica,20)
let font = UIFont(name:"Helvetica", size: 20)
★ フォントの生成(標準,標準サイズ)
let font = UIFont.systemFontOfSize(UIFont.systemFontSize())
★ フォントの生成(標準,標準サイズよりも小さめのサイズ)
let font = UIFont.systemFontOfSize(UIFont.smallSystemFontSize())
★ フォントの生成(標準,ボタンで使用される標準的なサイズ)
let font = UIFont.systemFontOfSize(UIFont.buttonFontSize())
★ フォントの生成(標準,ラベルで使用される標準的なサイズ)
let font = UIFont.systemFontOfSize(UIFont.labelFontSize())
★ フォント名を取得する
let font = UIFont(name:"HelveticaNeue", size: 14)
let fontName = font?.fontName
//=> fontName = "HelveticaNeue"
★ フォント名一覧を取得
var familyNames: [String] = UIFont.familyNames();
for fontFamily in familyNames {
let fontNames: [String] = UIFont.fontNamesForFamilyName(fontFamily);
print("\(fontFamily),\(fontNames)")
}
★ UILabelのフォントを等幅フォントにするextension
How to get monospaced numbers in UILabel on iOS 9
// ラベルのIBOutletにdidSetを追加
@IBOutlet private var label: UILabel? {
didSet {
label.font = label.font.monospacedDigitFont
}
}
// 以下はextension
extension UIFont {
var monospacedDigitFont: UIFont {
let oldFontDescriptor = fontDescriptor()
let newFontDescriptor = oldFontDescriptor.monospacedDigitFontDescriptor
return UIFont(descriptor: newFontDescriptor, size: 0)
}
}
private extension UIFontDescriptor {
var monospacedDigitFontDescriptor: UIFontDescriptor {
let fontDescriptorFeatureSettings = [[UIFontFeatureTypeIdentifierKey: kNumberSpacingType, UIFontFeatureSelectorIdentifierKey: kMonospacedNumbersSelector]]
let fontDescriptorAttributes = [UIFontDescriptorFeatureSettingsAttribute: fontDescriptorFeatureSettings]
let fontDescriptor = self.fontDescriptorByAddingAttributes(fontDescriptorAttributes)
return fontDescriptor
}
}