Swift 3.0
//
// ViewController.swift
// UIKit014
//
// Copyright © 2016年 FaBo, Inc. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 画像を設定する.
let myImage: UIImage = UIImage(named: "fabo_logo.png")!
let imageWidth: CGFloat = 300
let imageHeight: CGFloat = 100
// 画像を縮小する(0.5倍)
// 表示する座標を設定.
let downPosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let downPosY: CGFloat = 50
// 表示用のUIImageViewを生成.
let myScaleDownView: UIImageView = UIImageView(frame: CGRect(x: downPosX, y: downPosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myScaleDownView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myScaleDownView.transform = CGAffineTransform(scaleX: 0.5, y: 0.5)
// Viewに追加する.
self.view.addSubview(myScaleDownView)
// 画像を拡大(1.2倍)
// 表示する座標を設定.
let upPosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let upPosY: CGFloat = 150
// 表示用のUIImageViewを生成.
let myScaleUpView: UIImageView = UIImageView(frame: CGRect(x: upPosX, y: upPosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myScaleUpView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myScaleUpView.transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
// Viewに追加する.
self.view.addSubview(myScaleUpView)
// 画像を回転する.
// 表示する座標を設定.
let rotatePosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let rotatePosY: CGFloat = 350
// 表示用のUIImageViewを生成.
let myRotateView:UIImageView = UIImageView(frame: CGRect(x: rotatePosX, y: rotatePosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myRotateView.image = myImage
// radianで回転角度を指定(30度)する.
let angle: CGFloat = CGFloat((30.0 * M_PI) / 180.0)
// 回転用のアフィン行列を生成する.
myRotateView.transform = CGAffineTransform(rotationAngle: angle)
// Viewに追加する.
self.view.addSubview(myRotateView)
// 画像を反転する.
// 表示する座標を設定.
let reversePosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let reversePosY: CGFloat = 550
// 表示用のUIImageViewを生成.
let myReverseView: UIImageView = UIImageView(frame: CGRect(x: reversePosX, y: reversePosY, width: imageWidth, height: imageHeight))
// 画像を設定する.
myReverseView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myReverseView.transform = myReverseView.transform.scaledBy(x: -1.0, y: 1.0)
// Viewに追加する.
self.view.addSubview(myReverseView)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Swift 2.3
//
// ViewController.swift
// UIKit014
//
// Copyright © 2016年 FaBo, Inc. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 画像を設定する.
let myImage: UIImage = UIImage(named: "fabo_logo.png")!
let imageWidth: CGFloat = 300
let imageHeight: CGFloat = 100
// 画像を縮小する(0.5倍)
// 表示する座標を設定.
let downPosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let downPosY: CGFloat = 50
// 表示用のUIImageViewを生成.
let myScaleDownView: UIImageView = UIImageView(frame: CGRect(x: downPosX, y: downPosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myScaleDownView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myScaleDownView.transform = CGAffineTransformMakeScale(0.5, 0.5)
// Viewに追加する.
self.view.addSubview(myScaleDownView)
// 画像を拡大(1.2倍)
// 表示する座標を設定.
let upPosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let upPosY: CGFloat = 150
// 表示用のUIImageViewを生成.
let myScaleUpView: UIImageView = UIImageView(frame: CGRect(x: upPosX, y: upPosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myScaleUpView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myScaleUpView.transform = CGAffineTransformMakeScale(1.2, 1.2)
// Viewに追加する.
self.view.addSubview(myScaleUpView)
// 画像を回転する.
// 表示する座標を設定.
let rotatePosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let rotatePosY: CGFloat = 350
// 表示用のUIImageViewを生成.
let myRotateView:UIImageView = UIImageView(frame: CGRect(x: rotatePosX, y: rotatePosY, width: imageWidth, height: imageHeight))
// UIImageViewに画像を設定する.
myRotateView.image = myImage
// radianで回転角度を指定(30度)する.
let angle: CGFloat = CGFloat((30.0 * M_PI) / 180.0)
// 回転用のアフィン行列を生成する.
myRotateView.transform = CGAffineTransformMakeRotation(angle)
// Viewに追加する.
self.view.addSubview(myRotateView)
// 画像を反転する.
// 表示する座標を設定.
let reversePosX: CGFloat = (self.view.bounds.width - imageWidth) / 2
let reversePosY: CGFloat = 550
// 表示用のUIImageViewを生成.
let myReverseView: UIImageView = UIImageView(frame: CGRect(x: reversePosX, y: reversePosY, width: imageWidth, height: imageHeight))
// 画像を設定する.
myReverseView.image = myImage
// 縮小用(0.5倍)のアフィン行列を生成する.
myReverseView.transform = CGAffineTransformScale(myReverseView.transform, -1.0, 1.0)
// Viewに追加する.
self.view.addSubview(myReverseView)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
2.3と3.0の差分
CGAffineTransformの引数定義の変更.
http://docs.fabo.io/swift/uikit/img/uikit014.png
Reference
UserNotifications
https://developer.apple.com/reference/uikit/uiimageview
Reference
UserNotifications
https://developer.apple.com/reference/uikit/uiimageview
Be the first to comment
You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.