[아이폰] - 위젯 : UIButton, UISwitch, UIImageView 사용하기 예제
○ 위젯 : UIButton, UISwitch, UIImageView 사용하기 예제 |
UIButton setImage() - 버튼에 이미지 적용 setTitle() - 확인 및 취소 버튼 만들 때 그 버튼의 이름 UISwitch setOn - true/false 사용하여 스위치 on/off 설정 isOn - 스위치 현재 상태 읽기 UIImageView image - 출력하고자 하는 UIImage 객체 변수 setContentMode - 부모 뷰 크기에 따라 그 내용을 어떻게 지정할지 결정(UIView 속성) import UIKit class ViewController: UIViewController { var isZoom = false @IBOutlet weak var imgView: UIImageView! // 이미지 바꾸기 위한 변수 선언 @IBOutlet weak var btnResize: UIButton! // 변수 선언(확대 <-> 축소 왔다갔다 위해) @IBAction func clickButton(_ sender: UIButton) { // 클릭 이벤트 처리(action) let scale : CGFloat = 2.0 var newWidth:CGFloat, newHeight:CGFloat // 그래픽 그릴 때(이미지 확대/축소 시) if(isZoom == true) { newWidth = imgView.frame.width / scale // 현이미지 사이즈에서 2배 나눈(너비) newHeight = imgView.frame.height / scale // 현이미지 사이즈에서 2배 나눈(높이) imgView.frame.size = CGSize(width: newWidth, height: newHeight) // 이미지크기 적용 btnResize.setTitle("확 대", for: .normal) // 버튼 클릭 시 텍스트 변경 btnResize.setTitleColor(UIColor.blue, for: .normal) // 버튼 클릭 시 색깔 변경 } else { newWidth = imgView.frame.width * scale // 현이미지 사이즈에서 2배 곱한(너비) newHeight = imgView.frame.height * scale // 현이미지 사이즈에서 2배 곱한(높이) imgView.frame.size = CGSize(width: newWidth, height: newHeight) // 이미지크기 적용 btnResize.setTitle("축 소", for: .normal) // 버튼 클릭 시 텍스트 변경 btnResize.setTitleColor(UIColor.red, for: .normal) // 버튼 클릭 시 색깔 변경 } isZoom = !isZoom // 클릭시 제어변수 바꿔 주겠금 } @IBAction func switchOnoff(_ sender: UISwitch) { // 스위치가 On, Off 일때, 이미지 변경 if(sender.isOn) { // sender로 받아서 이벤트 처리, _ 는 정보 생략, UISwitch의 isOn 사용 imgView.image = UIImage(named: "turnOnImage.jpg") // 이미지 불러와 적용 } else { imgView.image = UIImage(named: "turnOffImage.jpg") } } override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } |
'아이폰' 카테고리의 다른 글
[아이폰] - Swift for Windows 사용 시 NSObject 에러날 때 해결법 (0) | 2018.10.28 |
---|---|
[아이폰] - 배열과 UIButton 사용하기 예제 (0) | 2018.10.16 |
[아이폰] - 뷰 컨트롤러에서 효과주기(폰트, 정렬 등) (0) | 2018.10.16 |
[아이폰] - 스위프트 상속과 오버라이딩 (0) | 2018.10.16 |
[아이폰] - 스위프트 클래스(Class) 생성 및 초기화 (0) | 2018.10.16 |