콘텐츠로 건너뛰기
Home » iOS101

iOS101

[iOS 앱 만들기 007] iOS 앱의 최소 단위

지금까지 iOS앱을 구성하는 화면이 어떻게 구성되고, 또 그 화면을 구성하는 요소들이 기본적으로 어떤 특징을 가지고 있는지 알아보았다. 이번에는 iOS앱을 구성하는 화면외의 구성요소들을 살펴보도록 하자.

iOS앱의 구성요소

앱을 구성하는 요소는 다음과 같다.

  • 애플리케이션 객체 (UIApplication)
  • 윈도 객체 (UIWindow)
  • 앱 델리게이트 (커스텀 클래스, UIResponder를 서브 클래싱한다.)
  • 루트 뷰 컨트롤러 (UIViewController의 서브 클래스)

이 들 객체가 있으면 앱은 실행되고 첫 화면을 표시할 수 있게 된다.더 보기 »[iOS 앱 만들기 007] iOS 앱의 최소 단위

[iOS 앱 만들기 004] 뷰 컨트롤러 아웃렛과 액션

뷰 컨트롤러의 주된 역할인 뷰의 제어에 대해 알아보려면 먼저 MVC 패턴에 대해 살짝 이야기하고 넘어갈 필요가 있을 것 같다. MVC 패턴은 객체 지향 프로그래밍의 디자인 패턴이지만, 코코아터치 프레임워크 곳곳에 적용되어 있으며, iOS 앱을 만들 때에도 필연적으로 가장 많이 사용될 수 밖에 없는 패턴이다.더 보기 »[iOS 앱 만들기 004] 뷰 컨트롤러 아웃렛과 액션

[iOS 앱 만들기 003] 뷰 컨트롤러 기초

지난 시간에 생성한 윈도 객체에 대해 뷰 컨트롤러를 인스톨(!)하는 방법을 잠시 소개했다. 물론, 화면의 전환이 없고 화면 내에서 사용자 터치에 반응하는 버튼이나 내용의 변경이 필요한 부분이 별로 없다면 뷰 컨트롤러는 필요하지 않을 수도 있다. (앱 델리게이트 등의 객체가 그 역할을 대신하면 되니까) 하지만 그렇게 간단하기만한 앱은 그다지 쓸모가 없는 예제인 경우가 많으니, 보통의 경우에는 뷰 컨트롤러가 필요하다.

더 보기 »[iOS 앱 만들기 003] 뷰 컨트롤러 기초

[iOS 앱 만들기 002] 윈도우 객체

iOS앱에서 무슨 윈도타령인가? 하지만 실제로 그렇다. iOS앱은 한 번에 한 개 앱이 화면을 꽉 채운 상태로 실행된다. 데스크톱용 앱과는 달리 화면에는 항상 1개의 앱만 표시되기 때문에 윈도의 테두리나 제목막대 같은 게 표시되지 않고 “스크린 위에 뷰가 있는 형태”가 되는데…. 스크린에 표시되는 뷰의 계층 구조에서 최상위 뷰의 역할을 할 고정된 객체가 필요한데, 이 역할을 윈도 객체가 한다. 따라서 윈도 객체(UIWindow)는 UIView의 서브 클래스이며, 주로 앱 델리게이트의 프로퍼티로 접근하게 된다.

더 보기 »[iOS 앱 만들기 002] 윈도우 객체

앱델리게이트 이해하기 (iOS앱 만들기 – 01)

iOS앱이 시작되는 과정 iOS앱은 Objective-C로 만들어지고, Objective-C는 C언어가 확장된 형태이며, 기본적인 구조는 C와 동일하다.  따라서 iOS앱 역시 예외없이 main 함수가 프로그램 전체의 본체가 되며, iOS 앱 프로젝트의 메인이 되는 파일인 main.m에 이 함수가 정의되어 있다. 다만, 99%의 iOS앱 프로젝트가 앱의 론칭 방식까지 변경할 이유는 없기 때문에 우리는 보통 앱이 실행되고 나서 커스텀 코드를 만나게 되는 첫 지점인 앱 델리게이트 파일부터 편집하게 된다. 하지만 프로젝트 네비게이터를 잘 뒤져보면 main.m 파일이 있을 것이다. iOS앱은 사실 UIApplication이라는 클래스의 객체이다. 프로젝트의 main 함수는 기본적으로 UIApplication 클래스의 인스턴스를… 더 보기 »앱델리게이트 이해하기 (iOS앱 만들기 – 01)