Archive/Doit 아이폰 앱(입문) 13

Table - 코드리뷰 ( 테이블뷰컨트롤러 )

테이블 뷰 -- 이거 진짜 많이 사용할 것 같은데, 주석 통해서 확실히 알아두기 아 그리고 이건 갑자기 생각나서 적는건데 IBOutlet에 직접 전달할 수가 없어서 따로 변수 선언해서 연결해 주어야한다. 테이블 뷰 보면 저기 계속 줄이 보이죠? 근데 저거 있으면 불편하잖아요 그쵸? 그러면 어떻게 해결해야 하냐면 테이블 뷰의 프로토타입 아래에 view를 하나 넣어주면 테이블 뷰에서 내용이 없을 때, 더이상 표시되지 않아요! -- 꿀팁 테이블 뷰 사용법은,, 워낙 중요할 것 같다는 생각이 들어서 우선 살펴보도록 하자. 주석보면서 복습하면 쉬움 그래도 사용법 간단정리는 하고 지나갈까요? 테이블 뷰 기초 사용법 1. 데이터소스 및 델리게이션 class쪽에 작성 2. 그 이후는.. 함수 금방 이해할 수 있음. 아..

Navigation - 코드리뷰

이번에는 프로토콜과 뷰 간의 데이터 전달방법에 대해서 알아봐야겠다. 내가 제일 많이 실수하는 prepare에 대해서도 한번 보자. ( 실수라기 보단 자꾸 안외워져서 책을 자꾸 찾아본다 ^__^ ) ios 개발은 MVC 패턴으로 Model(데이터담당) - View(화면 표현 담당) - Controller(모델과 뷰사이의 이벤트를 입력받아 처리) 로 구성된다 아니 그래서 이게 무슨 말이냐면 예를들어 view가 2개이면 model도 2개가 되는데, View 간에 데이터를 전달을 어떻게 해야할지 고민에 빠지게 된다. prepare 쪽 코드 주석을 꼼꼼하게 보기 바란다. 스토리 보드에서 identifier 설정도 당연히.. 해줘야겠죠? 세그연결도 마차가지겠죠? 이런건 넘 기본이니까 서술 안할건데,, 절대 까먹을 ..

PageControl - 코드리뷰

// // ViewController.swift // PageControl // // Created by Hamlit Jason on 2021/02/22. // import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. pageControl.numberOfPages = images.count // 전체 페이지 수 pageControl.currentPage = 0 // 현재 페이지 pageControl.pageIndicatorTintColor = UIColor.green // 페이지를 표시하..

Map - 코드리뷰(맵뷰)

// // ViewController.swift // Map // // Created by Hamlit Jason on 2021/02/21. // import UIKit import MapKit class ViewController: UIViewController, CLLocationManagerDelegate { // 권한이 안뜨면 초기에 허용해두어서 그렇고, plist 수정시 책 256쪽 참고 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. lblLocationInfo1.text = "" // 위치 정보를 표시할 레이블 lblLocationInfo2.text = "" /..

Web - 코드리뷰(웹뷰)

// // ViewController.swift // Web // // Created by Hamlit Jason on 2021/02/21. // import UIKit import WebKit class ViewController: UIViewController, WKNavigationDelegate { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. myWebView.navigationDelegate = self // 웹뷰가 로딩중인지 살펴보기 위한 델리게이션 loadWebPage("https://2sam.net") } func webView(_ webView: WKWe..

PickerView - 코드리뷰

// // ViewController.swift // PickerView // // Created by Hamlit Jason on 2021/02/21. // import UIKit /* 스토리보드에서 피커뷰를 뷰컨트롤러로 컨트롤+ 마우스로 델리게이트 연결이 중요하다. 왜냐하면, 스토리 보드를 보면 우리가 원한 정보가 아닌데, 이걸 연결해주기 위함. */ class ViewController: UIViewController, UIPickerViewDelegate,UIPickerViewDataSource { var imageArray = [UIImage?]() let PICKER_VIEW_HEIGHT:CGFloat = 80 func pickerView(_ pickerView: UIPickerView, ro..

DatePicker - 코드리뷰 (타이머)

// // ViewController.swift // DatePicker // // Created by Hamlit Jason on 2021/02/18. // import UIKit // 기본 코드에 미션도 추가하였음. class ViewController: UIViewController { let timeSelect : Selector = #selector(ViewController.updateTime) // 타이머가 구동되면 실행할 함수 지정 let interval = 1.0 // 타이머의 간격 값 var count = 0 // 타이머가 설정한 간격대로 실행하는지 확인하기 위한 값 @IBOutlet var lblCurrentTime: UILabel! @IBOutlet var lblPickerTime:..