📄 基本の使い方
let imageView = UIImageView()
imageView.frame = CGRect(x: 50, y: 100, width: 200, height: 200)
imageView.image = UIImage(named: "sampleImage")
imageView.contentMode = .scaleAspectFit
view.addSubview(imageView)
UIImage(named:) はアセットカタログ内の画像を読み込みます。contentMode で表示モードを指定できます。
🎨 コンテンツモードの種類
.scaleToFill:ビューに合わせて引き伸ばし.scaleAspectFit:比率を保って全体を表示(余白あり).scaleAspectFill:比率を保って全体にフィット(切り抜きあり).center:中央表示(拡大なし)
🪄 見た目のカスタマイズ
imageView.layer.cornerRadius = 20
imageView.layer.borderWidth = 2
imageView.layer.borderColor = UIColor.gray.cgColor
imageView.clipsToBounds = true
角丸や枠線は CALayer プロパティで調整可能です。
🧩 オートレイアウト対応
let imageView = UIImageView()
imageView.translatesAutoresizingMaskIntoConstraints = false
imageView.image = UIImage(systemName: "star")
view.addSubview(imageView)
NSLayoutConstraint.activate([
imageView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
imageView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
imageView.widthAnchor.constraint(equalToConstant: 100),
imageView.heightAnchor.constraint(equalToConstant: 100)
])
📌 注意点とヒント
- 画像は Assets.xcassets に登録しておくと便利
UIImage(systemName:)は SF Symbols を使うときに使用- 重い画像の表示は 非同期処理やキャッシュ を検討する
isUserInteractionEnabled = trueを設定しないとタップできない