【Swift】UIImageのSystemNameを使ってみる

簡単にアイコンを利用できるUIImage(systemName:””)を使ったアイコン表示

基本的な使い方

UIImageに利用しましたが、UIButtonやUIBarButtonItemでも利用できます

class ViewController: UIViewController {

    var imageView:UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        imageView = UIImageView()
        imageView.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
        imageView.center = self.view.center
        imageView.image = UIImage(systemName: "trash") //ここにアイコン名
        self.view.addSubview(imageView)
    }
}

色を変更したい場合

色を変更したい場合はimageView.tintColorで設定します

import UIKit

class ViewController: UIViewController {

    var imageView:UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        imageView = UIImageView()
        imageView.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
        imageView.center = self.view.center
        imageView.image = UIImage(systemName: "trash") //ここにアイコン名
        imageView.tintColor = .red //ここでアイコンの色を設定
        self.view.addSubview(imageView)
    }
}

スタイルの設定

アイコンのサイズ、ウェイトはUIImage.SymbolConfigurationで設定します

let config = UIImage.SymbolConfiguration(pointSize: 30, weight: .thin)

UIImageにconfigを設定する場合はUIImage.contentModeでcenterを設定するなど初期値から変更する必要があるのでご注意ください

アイコン名の取得方法

SFSymbolsをダウンロード

起動してアイコン名を確認してください