【Swift】UIButtonの枠のサイズに合わせてフォントサイズを自動調整する方法

ボタンに設定したタイトルがボタンの横幅を超えてしまうと、文字が切れてしまったり、「」になってしまいます。

タイトルが固定であれば、単にボタンの長さを調整したり、テキストサイズを変更すれば良いだけですが、クイズアプリのように、ボタンのタイトルが動的に変わるような場合、それはできません。

そこでこのページでは、その対処法として、ボタンの横幅に合わせて自動でフォントサイズを調整する方法を紹介します。

実装方法

import UIKit

class ViewController: UIViewController {

  @IBOutlet weak var button: UIButton!

  override func viewDidLoad() {
    super.viewDidLoad()

    // ボタンの横幅に応じてフォントサイズを自動調整する設定
    button.titleLabel?.adjustsFontSizeToFitWidth = true
  }
}

adjustsFontSizeToFitWidth はフォントサイズの自動調整をするかどうかのプロパティで、これをtrueに設定してあげればOKです。

button.adjustsFontSizeToFitWidthではなく、button.titleLabel?.adjustsFontSizeToFitWidthなので間違えないようにしてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA