うさがにっき

読書感想文とプログラムのこと書いてきます

UIImageViewに色々なものを表示する

概要

UIImageViewに画像、ネット上の画像などを表示する

詳細

UIImageViewにプロジェクト上の画像を表示

アトリビュート・インスペクタで色々属性を設定できる

Image 画像
Mode 縦横の比率

Modeで設定する項目

Scale To Fill 画像がビューのサイズにぴったりになるように縦横を拡大、縮小する
Aspect Fit 画像がすべて表示されるように拡大、縮小する、縦横の比率は変わらない(縦横に隙間が出てくる可能性がある)
Aspect Fill ビューが画像で隙間なく表示されるように拡大、縮小する(画像がはみ出して表示されないことがある)

ModeをAspect FitにしてUIImageViewを画像に結びつける

    @IBOutlet weak var myImageView: UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        myImageView.image = UIImage(named: "images.jpeg")
    }

f:id:tiro105:20150318084240p:plain

Images.xcassets(イメージアセット)について

iPhone5, iPhone6で解像度が違うことを吸収する仕組み
デバイスによって違うサイズの画像を用意する

New Image Set押下
f:id:tiro105:20150318083526p:plain
1xに1倍の、2xに2倍の、3xに3倍の画像をそれぞれドラッグしてセットする
f:id:tiro105:20150318083609p:plain

UIImageViewにWeb上の画像を表示する

    @IBOutlet weak var myImageView: UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()

        // URLオブジェクトを作る
        var myURL = NSURL(string: "http://livedoor.blogimg.jp/aaieba149/imgs/e/8/e80b516b.jpg")
        // URLオブジェクトからデータを読み込んでファイルデータを作る
        var myData = NSData(contentsOfURL: myURL!)
        // ファイルデータをイメージデータに変換
        var myImage = UIImage(data: myData!)
        myImageView.image = myImage
    }

こんな感じに表示できる
f:id:tiro105:20150318085026p:plain

参考

Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】

Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】