var imgOn : UIImage?
// ? 는 optional 개념으로, nil(=null)이거나 존재 여부를 알 수 없다는 것을 의미.
// swift는 변수에 반드시 nil이 아닌 값을 할당해야 하지만 옵셔널 타입을 사용해서 변수에 값이 없음을 알릴 수 o
// 할당되면 optional wrapping 이라고 하고, !값을 사용해서 force unwrapping 도 가능..
// : 은 타입 선언, = 는 값 할당
import UIKit
class ViewController: UIViewController {
var isZoom = false
var imgOn: UIImage?
var imgOff: UIImage?
@IBOutlet var imgView: UIImageView!
@IBOutlet var btnResize: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
imgOn = UIImage(named:"IMG_2129.jpeg")
imgOff = UIImage(named:"IMG_3388.jpeg")
imgView.image = imgOn
}
@IBAction func btnResizeImg(_ sender: UIButton) {
}
@IBAction func switchImgOnOff(_ sender: UISwitch) {
}
}
@IBAction func btnResizeImg(_ sender: UIButton) {
let scale:CGFloat = 2.0
var newWidth:CGFloat, newHeight:CGFloat
}
//CGFloat:실수형 type
import UIKit
class ViewController: UIViewController {
var isZoom = false
var imgOn: UIImage?
var imgOff: UIImage?
@IBOutlet var imgView: UIImageView!
@IBOutlet var btnResize: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
imgOn = UIImage(named:"IMG_2129.jpeg")
imgOff = UIImage(named:"IMG_3388.jpeg")
imgView.image = imgOn
}
@IBAction func btnResizeImg(_ sender: UIButton) {
let scale:CGFloat = 2.0
var newWidth:CGFloat, newHeight:CGFloat
if(isZoom){
newWidth = imgView.frame.width/scale
newHeight = imgView.frame.height/scale
btnResize.setTitle("확대", for: .normal) // btnResize의 텍스트를 확대로 변경
}
else{
newHeight = imgView.frame.height*scale
newWidth = imgView.frame.width*scale
btnResize.setTitle("축소", for: .normal)
}
imgView.frame.size=CGSize(width: newWidth, height: newHeight)
isZoom = !isZoom
}
@IBAction func switchImgOnOff(_ sender: UISwitch) {
if(sender.isOn){
imgView.image = imgOn
}
else{
imgView.image = imgOff
}
}
}
===
// 도전 : 이미지 뷰어 만들기 (다음, 이전 버튼)
import UIKit
class ViewController: UIViewController {
@IBOutlet var imgView: UIImageView!
@IBOutlet var btnBefore: UIButton!
@IBOutlet var btnAfter: UIButton!
var numImg = 1
let maxImg = 3
var img1: UIImage?
var img2: UIImage?
var img3: UIImage?
var img4: UIImage?
override func viewDidLoad() {
super.viewDidLoad()
img1 = UIImage(named: "IMG_2129.jpeg")
img2 = UIImage(named:"IMG_3315.jpeg")
img3 = UIImage(named:"IMG_3388.jpeg")
img4 = UIImage(named:"IMG_3408.jpeg")
imgView.image = img1
numImg = 1
}
@IBAction func btnGoback(_ sender: UIButton) {
if(numImg == 1){
imgView.image = img4
numImg = 4
}
else{
if(numImg == 2){
imgView.image = img1
}
else if(numImg == 3){
imgView.image = img2
}
else if(numImg == 4){
imgView.image = img3
}
numImg-=1
}
}
@IBAction func btnGoNext(_ sender: UIButton) {
if(numImg == 4){
imgView.image = img1
numImg = 1
}
else{
if(numImg == 3){
imgView.image = img4
}
else if(numImg == 2){
imgView.image = img3
}
else if(numImg == 1){
imgView.image = img2
}
numImg+=1
}
}
}
이미지 이름을 숫자로 해서 String() 함수를 사용함ㄴ 더욱 간단함.
let imgName = String(numIng) + ".png"
'Study > Swift' 카테고리의 다른 글
[스위프트 기초] 5장 피커뷰 사용해보기 (1) | 2024.12.18 |
---|---|
[스위프트 기초] 4장 데이트 피커 사용해보기 (0) | 2024.12.17 |
[스위프트 기초] 1장, 2장 : Hello world, outlet 객체 사용해보기, 시물레이션 사용해보기 (1) | 2024.12.10 |
[Swift] Kmooc - swift 프로그래밍 (청강) 2강 : 상수, 변수, 데이터 타입 (0) | 2024.07.10 |
[Swift] Kmooc - swift 프로그래밍 (청강) (0) | 2024.07.09 |
댓글