Swift UILabelをフォントサイズでフィットさせる
手順概要
- 文字列を設定
- フォント情報を設定
- フィットするサイズを取得
- 取得したサイズを設定
Exampleコード
最初
let day = UILabel() day.text = text day.font = UIFont.boldSystemFont(ofSize: size) day.textColor = color day.adjustsFontSizeToFitWidth = true day.numberOfLines = 0 let rect = day.sizeThatFits(CGSize(width: CGFloat.greatestFiniteMagnitude, height: CGFloat.greatestFiniteMagnitude)) day.frame = CGRect(x: x, y: y, width: rect.width, height: rect.height)
テキストやフォント変更後
day.text = newtext let rect = day.sizeThatFits(CGSize(width: CGFloat.greatestFiniteMagnitude, height: CGFloat.greatestFiniteMagnitude)) day.frame = CGRect(x: day.frame.origin.x, y: day.frame.origin.y, width: rect.width, height: rect.height)