# ViewController
[iOS][Swift] UIKit View 정리
UIKit은 iOS 및 tvOS 앱의 그래픽 및 이벤트 기반 인터페이스를 만드는 데 사용되는 프레임워크입니다. 여기에는 사용자 인터페이스를 구성하는 여러 클래스와 프로토콜이 포함되어 있으며, 대표적인 것들은 다음과 같습니다. UIView UIView는 모든 사용자 인터페이스 구성 요소의 기본 클래스로 화면에 그려질 수 있는 모든 객체의 기본 단위입니다. 그리기, 레이아웃, 이벤트 핸들링 등의 기본 동작을 제공합니다. 버튼, 슬라이더, 스위치 등은 모두 UIView를 상속받는 클래스입니다. UIViewController UIViewController는 화면 상의 콘텐츠를 관리하는 객체로, 하나 이상의 뷰를 관리하는 컨테이너입니다. 뷰 컨트롤러는 사용자 인터페이스의 일부분을 캡슐화하며, 해당 부분의 생명 주기와 관련된 이벤트를 관리합니다. 뷰 컨트롤러는 다른 뷰 컨트롤러와 협력하여 앱의 인터페이스를 구성합니다. 예를 들어, 탭 바 컨트롤러, 내비게이션 컨트롤러 등이 있습

ViewController LifeCycle
1. ViewDidLoad: 모든 IBOutlet, IBAction 등이 연결되어 접근이 가능하게 되는 단계, view가 생성되었을 때 딱 한번만 호출됨 > 2. ViewWillAppear: View가 스크린에 보이기 직전에 호출됨. 이 단계에서 UI 구성요소들을 숨기거나 표시하기에 좋음. 이유는 사용자가 스크린을 통해 변화를 알아차리기 직전의 단계이기 때문이다. > 3. ViewDidAppear: 이 단계에서는 view가 스크린에 표시되어 사용자가 이를 눈으로 확인 할 수 있다. 그래서 이 단계에서는 타이머를 시작하거나 애니메이션 효과를 넣기에 좋다. > 4. ViewWillDisappear: 3단계를 했다면 이 단계 또한 거쳐야한다. 이 단계에서는 전 화면으로 돌아가거나 현재 화면을 없애기에 좋다. 가령 애니메이션 효과를 멈추거나, UI 모양을 바꾸는것과 같은 일을 하기 좋은 단계이다. > 5. viewDidDisappear: 스크린에서 view가 표시되지 않
ViewController에서 UITextField작업 수행하기
UITextField 타입의 간단한 속성 및 기능 >ViewController내부에서 UITextField타입의 속성을 생성하면 UITextField의 다양한 속성기능을 사용할 수 있습니다. > 해당 작업은 델리게이트 패턴(Delegate Pattern)방식 없이 사용 가능합니다. UITextField의 작업을 위임받아 사용 ViewController에서 UITextField의 작업이 필요한 경우가 종종 있지만, 각각의 객체는 서로 하는 작업이 다르기 때문에 일반적인 방법으로는 UITextField의 작업을 수행할 수 없습니다. 이러한 문제점을 해결하기 위해 만들어진 방법이 델리게이트 패턴(Delegate Pattern)입니다. 📌 UITextFieldDelegate 프로토콜 채택하기 >ViewController에서 UITextField타입
2022년 05월 09일 정리
cocoa touch class란? UIKit과 Foundation, cocoa touch class 간의 관계 화면 전환 방법 1) Segue를 이용한 push ViewController -> show self.navigationController.popViewController()로 화면 전환 2) Segue를 이용한 present ViewController -> present modally self.presentingViewController.dismiss()로 화면 전환 3) 코드를 이용한 push viewController를 인스턴스화(self.storyboard.instantiateViewController("스토리보드ID")) self.navigationController.pushViewController() self.navigation

특정 ViewController 의 orientation 변경
2018-01-14에 작성 Change orientation a specific viewController Set the orientation option on project settings In First, Set the orientation at AppDelegate Enable rotating orientation onto a specific viewController when back to the non-orientation viewController
ViewController-View Generic Snippet
//source: https://codeinswift.io/using-generics-to-simplify-subclassing-uiviewcontrollers-view-860c90852e27

[iOS] ViewController와 생명주기
- 본 포스팅은 패스트캠퍼스 강의를 참고하여 정리한 내용을 담고 있습니다. UIView UIView는 공식 문서에 따르면 `화면의 직사각형 영역에 대한 내용을 관리하는 개체` 이다. 쉽게 말해, 화면을 구성하는 UI의 기본 클래스이다. UIView는 아래와 같이 여러 컴포넌트의 부모 클래스로 존재한다. ViewController ViewController은 View를 관리하는 Controller이다.

ViewController 살펴보기 2 - ContainerViewController, ContentViewController
지난 포스팅 : [ViewController 살펴보기 1 -window,view] (https://velog.io/@im667/ViewController-%EC%82%B4%ED%8E%B4%EB%B3%B4%EA%B8%B0-1-Window%EC%99%80-View) 지난 포스팅에서는 뷰 계층과 뷰컨트롤러에 대한 내용을 최대한 간단하게 정리해 보았다. 이번 포스팅은 조금 더 자세히 뷰컨트롤러에 대해 알아보도록 하겠다. iOS를 공부하다보면 ViewController를 많이 다루는데, ContainerViewController, ContentsViewController 등 여러가지 뷰컨트롤러 타입을 접하게 된다. 하나씩 살펴보며 용어별로 분류해 정리해보자! UIViewController * 공식문서 * [사과 - UIViewController 공식 문서 번역 글](https://melod-it.gitbook.io/sagwa/app-frameworks/uikit/vie
ViewController 살펴보기 1 - Window와 View
ViewController 모든 화면 구조의 기본!인데.. 작업을 하다보면 ViewController를 칭하는 다양한 용어들이 등장한다..! 난 ViewController를 제대로 알고 쓰는것일까, 말로 잘 설명할 수 있을까, 스스로에게 드는 의문을 해소하고자 꼼꼼하게 정리해보고자 한다. 오늘은 먼저 window와 view를 알아보겠다. View? 뷰 계층 그림인데 쉬운 이해를 위해 먼저 살펴보겠다. 그림을 천천히 보면 우리가 앱의 화면을 볼때 한 화면안에 저렇게 많은 계층이 있다는 사실을 알아채기 어렵지만 여러가지 계층이 하나의 화면을 이루고 있음을 알 수 있다. 더 자세히 보자. view 들과 window를 더해야 합쳐진 view를 만날 수 있다고 한다. 최소한
18. ViewController Life Cycle
ViewController Life Cycle Appearing: 뷰가 화면에 나타나는 중 Appreared: 뷰가 화면에 나타나는 것이 완료 Disappearing: 뷰가 화면에서 사라지는 중 Disappeared: 뷰가 화면에서 사라진 것이 완료 관련 메서드 viewDidLoad() 뷰 컨트롤러의 모든 뷰들이 메모리에 로드되었을 때 호출되는 메서드로, 메모리에 처음 로드될 때 한번만 호출된다. 따라서 앱 실행 후 딱 한번 호출될 행위들을 이 메서드에 정의한다. 예를 들면 뷰와 관련된 각종 초기화 작업이나 네트워크 호출 등이 이 메서드 안에 정의될 수 있다. viewWillAppear() 뷰가 뷰 계층에 추가되어 화면에 보이기 직전마다 호출되는 메서드로, 다른 뷰로 이동했다가 되돌아올 경우에도 재호출된다. 위의 viewDidLoad() 메서드와 마찬가지로, 뷰와 관련된 각종 초기화 작업이 이 메서드 안에 정의될 수 있다.
.png)
iOS) ViewController의 생명주기 공부에서 시작한 ViewController와 View에 대한 고찰
공부는 다른 분들의 블로그 글 말고 공식문서로 하자! 읽기 쉽게 쓰인 글보다 제작자의 의도를 파악할 수 있는 공식문서 읽기 도전 유혹을 뿌리치기 쉽지 않다.. 사실 UIViewController 공식문서는 iOS 개발을 시작할 때쯤 (그러니까 아마 작년 이맘때..) 읽어본 적이 있다. 근데 사실 온전히 이해를 못 했었다. 이제 막 걸음마 배우고 있는 단계에 육상선수의 트레이닝법을 설명한 글을 읽고 있었던 것 같은 느낌. 이제 달릴 줄 아는 단계니까 다시 읽어보면 느낌이 또 다르겠지?! 뷰컨트롤러의 생명주기에 대해 공부하기 전에 먼저 ViewController가 뭔지부터 천천히 읽어보고 공부해봤습니다. 참고한 공식 문서 🖥 UIViewController <a href="https://developer.apple.com/library/a
UIViewController: ViewController Life Cycle (feat. 스토리보드 vs 코드)
ViewController에 대한 기본적인 내용은 여기를 참고해주세요 이번 포스팅에선 뷰컨의 Life Cycle을 간략히 소개하되 뷰컨을 스토리보드로 만들 때와 코드로 만들 때의 '차이점'에 좀 더 집중하여 정리해보겠습니다 🐸 뷰컨's Life Cycle ✔️ init() : 공식문서 뷰컨의 생성자 메서드입니다. 뷰컨의 init()은 두 개가 있으며, 스토리보드냐 xib/코드

[Swift] ViewController 화면전환 방법
ViewController의 화면 전환 방법에 대해 알아보자. 화면 전환 방법에는 대표적으로 네 가지 방법이 있다. ViewController의 view 바꿔치기 ViewController가 다른 ViewController를 호출(present) NavigationViewController 사용하여 화면 전환(push) 화면 전환용 객체 Segue 사용 > ViewController의 view를 바꿔치는 방법은 메모리 overflow 위험이 있기 때문에 좋은 방법이 아니라고 한다. 오늘은 이 방식은 건너뛰고 다른 방법들을 알아보자. ViewController가 다른 ViewController를 호출(present) 필자가 가장 애용하는 방식이자 가장 대표적인 방법이 아닐까 싶다. 다른 ViewController를 Modal로 띄우는 방법으로 다음 코드를 사용한다. 위 코드를 @IBAction func 메서드안에 작성한 후 Storybo

ViewController의 Life Cycle
ViewController Life Cycle 오늘은 ViewController의 생명주기에 대해 알아보겠습니다. ViewController의 생명주기는 아래와 같습니다. 오늘은 ViewController가 두 개 있고 뷰가 바뀔 때 어떻게 진행이 되는지 테스트 해보겠습니다. 해당 실험은 NavigationController입니다. 먼저 각 단계 별 설명을 하겠습니다. init() storyborad를 통해 viewController를 만들 경우 객체가 생성될 때 초기화 하는 작업을 하는 메소드입니다. loadView() 화면에 띄워질 View에 대한 데이터를 불러오는 메소드입니다. *vie

[iOS] - ViewController 화면전환
ViewController 의 화면전환 방법들에 대해 알아보자. 버튼을 하나 만들어주고, 다른 ViewController에 드래그하면 deprecated 된것들은 제끼고 대충 Show 와 Present가 보인다. 
[iOS] - ViewController LifeCycle
ViewController의 LifeCycle에 대해 알아보자. > #### 서론 iOS가 되던, 안드로이드가 되던 앱개발에 있어서 절대 빠질 수 없는 것 중 하나가 바로 화면간 정보 전달이다. 화면을 아무리 예쁘가 만들고 멋지게 만들어내도 우리가 화면을 전환할 때, 가져가야 할 것들을 가져가지 못하면 그 새로운 화면에는 어떠한 정보도 띄울 수 없을 것이다. iOS 를 독학하기 시작했을 때부터 여러 방법들을 찾아보고 구글링 해봤지만 어떠한 블로그나 사이트에서도 한번에 깔끔하게 정리해놓은 곳을 찾지 못했다. 내가 부족한 지식이지만 정리를 해보려고한다. ViewController의 구조 >UIViewController 의 구조에 대해 알아보자. 안드로이드, iOS 의 뷰에는 LifeCycle 생명주기가 존재한다. iOS 뷰의 LifeCycle은 아래 그림과 같다. 
[iOS / Swift] Storyboard와 ViewController
저번 시간까지 해서 iOS앱개발에 필요한 Swift 문법에 대해 공부를 했습니다. 이젠 본격적인 앱 개발 공부를 할 때가 된것 같군요! 오늘은 앱의 실행 과정을 만들 Storyboard와 앱의 가장 기본이 되는 화면인 ViewController에 대해 살펴보겠습니다. Storyboard 스토리보드Storyboard란 앱의 흐름을 나타내며, 시각적으로 화면을 구성하는 곳입니다. 스토리보드에서 우리는 앱의 전반적인 형태와 앱의 화면 전환, 다양한 Object들을 관리해주는 곳입니다. 여기서 Object들이란 화면에서의 Label, Button, Sliders 등 요소들을 나타내는 것입니다. 그럼 저번에 Xcode에 관해 포스팅을 하면서 만들었던 FristProject파일로 가보겠습니다. 
iOS & Swift 공부 - UIViewController Lifecycle (영)
viewWillAppear Called when content view created in memory What is content view? → When you create a new view controller (cocoatoach class) in your storyboard, a View object is created automatically. The content view aforementioned is this. viewWillAppear Called just before content view is added to app's view hierarch

Understand the View Controller LifeCycle
Why do we need to know? 대부분의 어플리케이션은 단일 뷰보다는 여러 뷰가 존재하며, 그에 따른 뷰 컨트롤러도 다수개 있다. 그렇게 복잡한 앱일수록 사용자와의 상호작용이나, 화면이 load/unload 되는 게 많아지므로 뷰가 보여지는 상황이 변화하는 시점에 잘 맞춰 UI의 변화나 데이터 변화를 잘 다룰 수 있어야 한다. States of View 뷰가 보여지는 상황은 크게 4가지로 분류할 수 있다. Appearing - 뷰가 화면에 나타나는 중 Appeard - 뷰가 화면에 나타나는게 완료 된 상태 Disappearing