🧬

[Swift]UIButtonにサイズ指定システムアイコン設定 超速サンプル

2024/01/07に公開

これまでの方法では、UIButtonに指定した画像の大きさが変わらないことがありました。
iOS15(Xcode13)からUIButtonの仕様が変わり、UIButton.Configuration で各種設定をするようになりました。

// ※StoryBoardで作成したボタンを使用する場合はStyleを `Default` に変更してください
let button = UIButton()
var configuration = UIButton.Configuration.plain()
// システムアイコン名、サイズを設定
let symbolConfiguration = UIImage.SymbolConfiguration(pointSize: 24.0, weight: .regular, scale: .default)
let systemImage = UIImage(systemName: "repeat.circle", withConfiguration: symbolConfiguration)
configuration.image = systemImage
button.configuration = configuration

ここでは画像、太さの指定しかしていませんが、
他にも、タイトル、画像位置、背景色など各種設定することができます。

公式Doc 「UIButton.Configuration」
https://developer.apple.com/documentation/uikit/uibutton/configuration

Discussion