Xcode
-
Swift - Delegate 정리Swift 2019. 7. 14. 19:27
Delegate 는 대리자(위임하다) 라는 뜻이며, 어떤 객체에서 일어나는 모든 일 (이벤트)을 하나의 객체가 처리하지않고 처리해야하는 일 중 일부를 다른 객체에서 처리(작성)해주는 것을 말한다. 즉 A의 일을 B가 대신 해주는 것 이며, 이러한 행위에는 당연히 처리해야하는 일인 '해야하는 일의 목록' 을 동반한다. sender : 일을 시키는 객체 (A) receiver : 일을 하는 객체 (B) protocol : 해야할 일의 목록 (동반하는것) 말로만 들으면 잘 모르겠다. 내가 듣고 이해한 것을 그림으로 표현해서 다시 말하고자한다. 1. Protocol : 해야할 일의 목록 여기 프로토콜인 선생님이 있다. 선생님은 숙제 검사를하다() , 가르치다(), 칭찬하다() 로 이루어져 있다. 만약 내가 사회..
-
Swift - viewDidLoad() 깔끔하게 쓰기Swift 2019. 7. 13. 18:18
viewDidLoad 안에 코드를 최대한 필요한 코드만 쓰기 위해서 정리하도록 한다. 앱을 만들면서 예제와는 다르게 많은 수의 ViewController 가 생기는데, 아무래도 코드가 파일마다 중복이 된다거나, 코드가 같이 줄줄이 소세지 처럼 있으면 나중에 유지보수가 힘들기 때문. BaseViewController.swift 를 만들고 모든 ViewController에 공통적으로 들어가는 것에 대해서 정리한다. 이 클래스 BaseViewController 는 기본 UIViewController 를 상속받고, 이곳에 뷰의 기본적인 배경색을 선언해준다. 레이아웃관련된 함수는 따로 작성을 하고, 그것을 viewDidLoad() 안에서 호출만 한다. 레이아웃 관련 함수에서는 정말 모든 ViewController..
-
Swift - ViewController Lifecycle (생명주기) 02Swift 2019. 7. 8. 16:17
Swift의 ViewController Lifecycle (생명주기) 를 문서로 정리를 해보았는데 가장 중요한 것은 내 눈으로 직접 보는게 아닐까 싶다. * 개념이 아직 안 잡혀있으면 다시 사진과 글을 보고오자 https://tono18.tistory.com/11 Swift - View Controller Life Cycle (생명주기) 앱은 View Controller 로 이루어져 있는데, 이 View Controller 가 여러개일 경우가 대부분 일것 이다. 이 각각의 View Controller 는 생명주기를 가지고 있는데 View Controller 에서는 생명주기는 화면에 보여졌.. tono18.tistory.com 직접 해보는 화면은 다음과 같다. 첫번째 화면(빨간색)에서 버튼을 누르면 두번째..
-
Swift - View Controller Life Cycle (생명주기)Swift 2019. 7. 3. 18:14
앱은 View Controller 로 이루어져 있는데, 이 View Controller 가 여러개일 경우가 대부분 일것 이다. 이 각각의 View Controller 는 생명주기를 가지고 있는데 View Controller 에서는 생명주기는 화면에 보여졌다가 사라지는 주기를 말하는 것이다. View Controller Life Cycle 을 이미지로 본다면 다음과 같은 이미지로 볼 수 있다. 이미지 출처: https://subscription.packtpub.com/book/application_development/9781783550814/6/ch06lvl1sec60/uiviewcontroller-lifecycle-methods 불러오는 중입니다... 1. loadView() : 화면에 띄워줄 view..
-
Swift 로 iOS 앱 만들기 - 05 : 코드로 view 생성하기 (Then 사용)Swift 2019. 7. 3. 13:45
[예제] SnapKit을 이용하여 Label, TextField, Button 을 만들어보자. - 03 [추가] 코드로 view 생성하는 3가지 방법 1. 가장 기본적인 방법 : viewDidLoad() 안에 작성 버튼과 텍스트 필드에서 색을 지정 해주는 부분에서 각 코드는 주석과 같다. UIColor.blue 부분에서 UIColor 를 지우고 쓸 수 있는데, 그 이유는 backgroundColor 변수의 타입 자체가 이미 UIColor 이기 때문에 굳이 UIcolor.blue로 쓰지 않아도 되기 때문이다. self.changeButton.backgroundColor = .blue //self.changeButton.backgroundColor = UIColor.blue self.nameTextField..
-
Swift 로 iOS 앱 만들기 - 04 : SnapKit 사용 / leading 과 trailingSwift 2019. 7. 2. 20:59
[예제] SnapKit을 이용하여 Label, TextField, Button 을 만들어보자. - 02 [추가] leading 과 trailing 에 대해서 알아보자. 01. Label, TextField, Button 추가하기 viewController.swift 에서 내가 추가하고자 하는 요소들을 입력한다. let 이름(원하는 것으로) = 넣고자 하는 요소() 넣고자 하는 요소 뒤에 " () " 를 붙여 주어 개체로 만들어 준다. 02. Label, TextField, Button 등록하기 내가 넣고자 하는 요소를 추가하고 나서 잘 들어 갔는지 디버그로 확인을 해보면, 빈 화면인 것을 볼 수 있다. 빈 화면인 이유는 아직 내가 넣을 요소들을 추가만 했을 뿐 등록하지 않았기 때문이다. 따라서 요소를 화..
-
Swift 로 iOS 앱 만들기 - 03 : Auto Layout 과 SnapKitSwift 2019. 6. 26. 12:42
[예제] SnapKit을 이용하여 Label, TextField, Button 을 만들어보자. - 01 01. Auto Layout 과 Snapkit Auto Layout 이란, 기존의 Frame-Based Layout과 다른 View들 간의 관계를 이용하여 View의 위치와 크기를 자동으로 결정하는 Layout System 이다. View간의 관계를 이용하여 해당되는 View의 위치와 크기를 자동으로 결정하는 Layout System으로 관계는 Constraint로 설정이 가능하다. 다양한 사이즈의 해상도가 나오면서 다른 크기의 화면에서도 같은 화면을 똑같이 보여주기 위해서 Auto Layout을 사용한다. Auto Layout을 쉽게 적용할 수 있게 코드를 작성하여 직접 코딩 할 수 있게 하는 라이브..
-
Swift 로 iOS 앱 만들기- 02 : 기본 셋팅Swift 2019. 6. 26. 11:57
Window를 만드는 법 01. 디버그로 window 확인해보기 전 강의까지의 상태에서 런을 한 후 디버깅을 해보면 다음과 같이 빈 화면이 나온다. 디버깅은 상단 패널 중 아래 부분을 나타내는 아이콘을 클릭한 후 Debug View Hierarchy 아이콘을 클릭하면 된다. 그러면 다음과 같이 빈 화면이 나오는 것을 볼 수 있는데, 이것은 우리가 메인 스토리보드를 날리고, 아직 윈도우를 만들어 주지 않았기 때문이다. 02. window 만들기 그럼, 이제 window를 만들어서 저 화면을 채워보자. window를 만들어주기 위해 AppDelegate.swift 파일로 돌아간다. 그리고 다음과 같이 입력한다. 들어가기에 앞서, Swift 문법에 대해서 살짝 보자면, 객체를 만들 때는 () class는 무조..