facebook twitter hatena line email

「Ios/swift/画像」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(アスペクトを維持)
(アスペクトを維持)
 
(同じ利用者による、間の2版が非表示)
行3: 行3:
 
#pngファイルを選択
 
#pngファイルを選択
 
#以下コードをViewControllerに追加
 
#以下コードをViewControllerに追加
        let image1:UIImage? = UIImage(named:"sample.png")
+
let image1:UIImage? = UIImage(named:"sample.png")
        let imageView = UIImageView(image:image1)
+
let imageView = UIImageView(image:image1)
        imageView.center = CGPointMake(100, 100)
+
imageView.center = CGPointMake(100, 100)
        self.view.addSubview(imageView)
+
self.view.addSubview(imageView)
  
 
参考:https://akira-watson.com/iphone/uiimageview.html
 
参考:https://akira-watson.com/iphone/uiimageview.html
行23: 行23:
 
  imgView.contentMode = UIViewContentMode.ScaleAspectFit
 
  imgView.contentMode = UIViewContentMode.ScaleAspectFit
  
  UIViewContentMode.ScaleToFill,        // UIImageViewにめいっぱいひろげる (デフォルト
+
UIViewContentMode.ScaleToFill,        // UIImageViewにめいっぱいひろげる (デフォルト
  UIViewContentMode.ScaleAspectFit,    // 画像のaspect比を維持し、ちょうどはいるようにする
+
UIViewContentMode.ScaleAspectFit,    // 画像のaspect比を維持し、ちょうどはいるようにする
  UIViewContentMode.ScaleAspectFill,    // 画像のaspect比を維持し、めいっぱい広げる(はみ出した分がみれなくなる)
+
UIViewContentMode.ScaleAspectFill,    // 画像のaspect比を維持し、めいっぱい広げる(はみ出した分がみれなくなる)
  UIViewContentMode.Redraw,            // UIViewContentModeScaleToFill これと同じに見えるけどなんだろう・・
+
UIViewContentMode.Redraw,            // UIViewContentModeScaleToFill これと同じ
  UIViewContentMode.Center,            // 画像サイズをそのままに、真ん中を表示
+
UIViewContentMode.Center,            // 画像サイズをそのままに、真ん中を表示
  UIViewContentMode.Top,                //                        上を
+
UIViewContentMode.Top,                //                        上を
  UIViewContentMode.Bottom,            //                        下を
+
UIViewContentMode.Bottom,            //                        下を
  UIViewContentMode.Left,              //                        左を
+
UIViewContentMode.Left,              //                        左を
  UIViewContentMode.Right,              //                        右を
+
UIViewContentMode.Right,              //                        右を
  UIViewContentMode.TopLeft,            //                        左上を
+
UIViewContentMode.TopLeft,            //                        左上を
  UIViewContentMode.TopRight,          //                        右上を
+
UIViewContentMode.TopRight,          //                        右上を
  UIViewContentMode.BottomLeft,        //                        左下を
+
UIViewContentMode.BottomLeft,        //                        左下を
  UIViewContentMode.BottomRight,        //                        右下を
+
UIViewContentMode.BottomRight,        //                        右下を
  
 
参考:http://d.hatena.ne.jp/rnamiki/20090226/1235667228
 
参考:http://d.hatena.ne.jp/rnamiki/20090226/1235667228

2016年8月2日 (火) 00:16時点における最新版

画像追加と表示

  1. プロジェクトからAddNewFIle~"プロジェクト名"を選択
  2. pngファイルを選択
  3. 以下コードをViewControllerに追加
let image1:UIImage? = UIImage(named:"sample.png")
let imageView = UIImageView(image:image1)
imageView.center = CGPointMake(100, 100)
self.view.addSubview(imageView)

参考:https://akira-watson.com/iphone/uiimageview.html

アイコン追加

  1. プロジェクト直下のAssets.xcassetsを開いてアイコン画像をそれぞれのサイズにドラッグ

画像フィット

let image = CIImage(image: UIImage(named: "sample.png")!)
var imgView: UIImageView!
imgView =  UIImageView(frame: CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height))
imgView.image = UIImage(CIImage: image!)
self.view.addSubview(imgView)

アスペクトを維持

imgView.contentMode = UIViewContentMode.ScaleAspectFit
UIViewContentMode.ScaleToFill,        // UIImageViewにめいっぱいひろげる (デフォルト
UIViewContentMode.ScaleAspectFit,     // 画像のaspect比を維持し、ちょうどはいるようにする
UIViewContentMode.ScaleAspectFill,    // 画像のaspect比を維持し、めいっぱい広げる(はみ出した分がみれなくなる)
UIViewContentMode.Redraw,             // UIViewContentModeScaleToFill これと同じ
UIViewContentMode.Center,             // 画像サイズをそのままに、真ん中を表示
UIViewContentMode.Top,                //                         上を
UIViewContentMode.Bottom,             //                         下を
UIViewContentMode.Left,               //                         左を
UIViewContentMode.Right,              //                         右を
UIViewContentMode.TopLeft,            //                         左上を
UIViewContentMode.TopRight,           //                         右上を
UIViewContentMode.BottomLeft,         //                         左下を
UIViewContentMode.BottomRight,        //                         右下を

参考:http://d.hatena.ne.jp/rnamiki/20090226/1235667228

画像を画面いっぱいに拡大

let screenWidth:Double = Double(self.view.bounds.width)
let width:Double = Double(testImageView.bounds.width)
let height:Double = Double(testImageView.bounds.height)
let scale:Double = Double(screenWidth / width)
let rect:CGRect = CGRectMake(0, 0, CGFloat(width * scale), CGFloat(height * scale))
testImageView.frame = rect