SwiftでカスタマイズしたImageViewを追加する方法


今回は、UIImageViewを継承したカスタマイズしたViewクラスを追加してみた。

ViewController

ViewController.swift
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        //UIViewController.viewの座標取得
        var x:CGFloat = self.view.bounds.origin.x
        var y:CGFloat = self.view.bounds.origin.y

        //UIViewController.viewの幅と高さを取得
        var width:CGFloat = self.view.bounds.width;
        var height:CGFloat = self.view.bounds.height

        //上記よりフレームを生成する
        var frame:CGRect = CGRect(x: x, y: y, width: width, height: height)

        //カスタマイズImageViewを生成
        var myView:SampleImageView = SampleImageView(frame: frame)
        //var myView:SampleView = SampleView(frame: frame)

        //カスタマイズViewを追加
        self.view.addSubview(myView)
    }

}

画像のインポート

読み込む画像は、Images.xcassetsファイルにインポートしておく。

カスタマイズしたImageView

SampleImageView.swift
import Foundation
import UIKit

class SampleImageView : UIImageView{
    init(frame: CGRect) {
        super.init(frame: frame)

        self.backgroundColor = UIColor.blueColor()
        var img:UIImage = UIImage(named: "snowman")
        self.image = img
        self.contentMode = UIViewContentMode.Center
    }
}

出力結果