사과
  • 애플 개발자 문서 한글 번역
  • App Frameworks
    • Foundation
      • 숫자, 데이터와 기본값
      • 문자열과 텍스트
      • 컬렉션
      • 날짜와 시간
      • 데이터 포맷
      • 작업 관리
        • Operation
        • OperationQueue
        • Timer
      • 리소스
        • Bundle
      • 파일 시스템
        • FileManager
      • Notification
        • NSKeyValueObserving
      • URL 로딩 시스템
        • 웹사이트 데이터를 메모리에 저장하기
        • URLSession
          • URLSessionConfiguration
            • urlCache
            • requestCachePolicy
          • configuration
        • URLSessionTask
        • URLRequest
        • URLResponse
        • HTTPURLResponse
        • 캐시 데이터에 접근하기
        • CachedURLResponse
        • URLCache
      • Object Runtime
        • NSValue
    • UIKit
      • UIKit으로 앱 개발
      • 앱과 환경
        • 앱 라이프 사이클 관리하기
        • 앱 실행에 대응하기
        • UIApplication
      • 문서, 데이터와 클립보드
      • Mac Catalyst
        • iPad 앱을 Mac 버전으로 만들기
        • 아이패드 앱의 맥 최적화
      • 뷰와 컨트롤
        • UIView
        • Table Views
          • UITableView
          • UITableViewCell
          • UIRefreshControl
        • UIScrollView
      • View Controllers
        • UIViewController
        • UITableViewController
        • UISearchController
      • 애니메이션과 햅틱
        • 프로퍼티 기반 애니메이션
          • UIViewPropertyAnimator
        • View controller 전환
      • 터치, 누르기, 제스처
        • UIResponder
        • UIKit 제스처 처리
        • 다중 제스처 인식기 조정
        • UILongPressGestureRecognizer
        • UIPanGestureRecognizer
          • maximumNumberOfTouches
          • minimunNumberOfTouches
          • translation(in:)
          • setTranslation(_:in:)
          • velocity(in:)
        • UIGestureRecognizer
    • Swift
      • 스위프트 표준 라이브러리
        • 메모리 직접 관리
          • 포인터 파라미터를 사용하는 함수 호출
          • UnsafePointer
          • UnsafeMutableRawBufferPointer
    • SwiftUI
      • 뷰와 컨트롤
        • View
        • Text
        • TextField
      • 뷰 레이아웃과 표현
      • 그리기와 애니메이션
      • 프레임워크 통합
      • 상태와 데이터 흐름
  • Graphics and Games
    • Core Animation
      • CALayer
      • CAAction
      • CAShapeLayer
      • CADisplayLink
    • Core Graphics
      • CGFloat
      • CGPath
  • App Services
    • Combine
    • WebKit
      • WKWebView
  • Media
    • AVFoundation
      • 시스템 오디오 상호작용
        • AVAudioSession
          • AVAudioSession.Category
            • ambient
            • multiRoute
            • playAndRecord
            • playback
            • record
            • soloAmbient
          • AVAudioSession.Mode
      • AVFoundation 자료형
  • Documentation Archive
    • 번들 프로그래밍 가이드
      • 번들에 대해
      • 번들 구조
    • Key-Value Observing 프로그래밍 가이드
    • Threading 프로그래밍 가이드
      • About Threaded Programming
      • Thread Management
  • ETC
    • Not Found
Powered by GitBook
On this page
  • 개요
  • 주제
  • 커스텀 뷰 컨트롤러
  • 스플릿 뷰 컨트롤러
  • 네비게이션 인터페이스
  • 페이지 뷰 인터페이스
  • 탭 뷰 인터페이스
  • 검색 인터페이스
  • 이미지와 비디오
  • 디렉토리 접근
  • 문서 미리보기
  • iCloud 공유
  • 액티비티 인터페이스
  • Font Picker
  • 단어 조회
  • 프린터 선택
  • 프레젠테이션 컨트롤러
  • 인터페이스 복원
  • 인터페이스 방향
  • 같이 보기
  1. App Frameworks
  2. UIKit

View Controllers

View Controller로 인터페이스를 관리하고 앱 컨텐츠 탐색을 수월하게 만드세요.

PreviousUIScrollViewNextUIViewController

Last updated 5 years ago

원문 출처

개요

View Controller는 UIKit 앱의 인터페이스를 관리합니다. View Controller는 단일 루트 뷰를 관리하고 단일 뷰에는 여러 개의 하위 뷰가 포함될 수 있습니다. 이와 같은 뷰 계층구조와의 유저 상호작용은 View Controller에 의해서 처리되며 View Controller는 필요에 따라 앱의 다른 객체와 함께 조율됩니다. 앱 컨텐츠가 화면에 표시할 수 있는 것보다 많은 경우 여러개의 View Controller를 사용해서 컨텐츠를 나누어 관리하는 것이 좋습니다.

컨테이너 뷰 컨트롤러는 다른 뷰 컨트롤러의 내용을 자체 루트 뷰에 포함합니다. 컨테이너 뷰 컨트롤러는 탐색을 용이하게하거나 고유한 인터페이스를 만들기 위해 커스텀 뷰에 하위 View Controller 컨텐츠를 혼합 할 수 있습니다. 예를 들어, UINavigationController 객체는 네비게이션 바와 하위 View Controller 스택 (한 번에 하나씩만 표시됨)을 관리하고 스택에서 하위 View Controller를 추가하거나 제거하는 API를 제공합니다.

UIKit은 특정 유형의 콘텐츠를 탐색하고 관리하기 위한 몇 개의 표준 View Controller를 제공합니다. 앱의 커스텀 콘텐츠를 포함하는 뷰 컨트롤러와 커스텀 컨테이너 뷰 컨트롤러를 정의하여 새 네비게이션 체계를 구현할 수도 있습니다.

주제

커스텀 뷰 컨트롤러

커스텀 인터페이스를 관리하기 위해서 view controller를 상속합니다.

  • class UIKit 앱의 View 계층구조를 관리하는 객체

  • class Table View 관리에 특화된 view controller

  • class UICollectionViewController Collection View 관리에 특화된 view controller

  • protocol UIContentContainer view controller의 컨텐츠를 뷰 사이즈와 제약사항에 맞게 조정하는 메서드들

스플릿 뷰 컨트롤러

  • class UISplitViewController master-detail 인터페이스를 구현하는 컨테이너 뷰 컨트롤러

네비게이션 인터페이스

  • class UINavigationController 계층적 컨텐츠를 탐색하기 위한 스택기반 스키마를 정의하는 컨테이너 뷰 컨트롤러

  • class UINavigationBar 탐색 컨트롤러와 함께 화면 상단에 주로 표시되는 네비게이션 바

  • class UINavigationItem 연관된 뷰 컨트롤러가 화면에 나타날때 화면 네비게이션 바에 나타나는 항목

페이지 뷰 인터페이스

  • class UIPageViewController

    하위 뷰 컨트롤러로 컨텐츠 페이지와 페이지의 탐색을 관리하는 컨테이너 뷰 컨트롤러

탭 뷰 인터페이스

  • class UITabBarController 라디오 스타일의 선택 인터페이스를 관리하는 컨테이너 뷰 컨트롤러. 선택에 따라서 표시할 하위 뷰 컨트롤러가 결정됩니다.

  • class UITabBar 탭 바에 다른 하위 작업, 뷰 또는 모드를 선택할 수 있는 버튼을 표시하는 컨트롤

  • class UITabBarItem 탭 바의 항목

검색 인터페이스

  • class UISearchContainerViewController 인터페이스상의 검색결과 표시를 관리하는 view controller

  • class UISearchBar 사용자로부터 검색 관련 정보를 받기위한 특수 뷰.

  • protocol UISearchResultsUpdating 사용자가 검색창에 입력한 정보를 기반으로 검색결과를 업데이트 할 수 있는 메서드들

  • 검색 컨트롤러를 사용하여 검색가능한 컨텐츠 표시하기 검색가능한 컨텐츠와 테이블 뷰를 사용하여 사용자 인터페이스를 생성하세요

이미지와 비디오

  • class UIImagePickerController 사진을 찍고, 동영상을 녹화하고, 사용자의 미디어 라이브러리에서 항목을 선택하기 위한 시스템 인터페이스를 관리하는 view controller

  • class UIVideoEditorController 비디오 프레임을 편집하고 녹화된 동영상을 인코딩하기 위한 시스템 인터페이스를 관리하는 view controller

디렉토리 접근

  • 문서 브라우저를 앱에 추가하기 사용자가 앱 내에서 로컬 또는 원격 문서에 액세스 할수 있도록 하세요

  • 디렉토리 접근기능 제공 Document picker를 사용하여 앱 컨테이너 외부의 디렉토리 컨텐츠에 접근하세요

  • 문서 브라우저 기반의 앱 빌드 문서 브라우저를 사용하여 사용자의 텍스트 파일에 대한 액세스를 제공하세요

  • class UIDocumentBrowserViewController 로컬 디바이스와 클라우드에 저장된 문서를 찾아보고 작업을 수행할 수 있는 view controller

  • class UIDocumentPickerViewController 앱 샌드박스 외부의 문서나 경로에 대한 액세스를 제공하는 view controller

  • Document Browser View Controller에 기반한 앱 개발 다른 클라우드 저장소 공급자의 파일과의 사용자 상호 작용을 관리하는 사용자 지정 문서 파일 형식을 구현합니다.

문서 미리보기

  • class UIDocumentInteractionController 앱에서 직접 처리할 수 없는 파일 형식을 미리 보거나 열거나 인쇄하는 view controller

iCloud 공유

  • class UICloudSharingController CloudKit 데이터베이스에 공유대상(사람)을 추가하거나 제거하기 위한 표준적인 화면을 제공하는 view controller

액티비티 인터페이스

  • class UIActivityViewController 앱에서 표준 서비스를 제공하는데 사용되는 view controller

  • class UIActivityItemProvider ActivityViewController에 전달되는 데이터의 프록시

  • protocol UIActivityItemSource ActivityViewController가 데이터를 검색하는데 사용하는 메서드들

  • class UIActivity 앱 특화 서비스를 구현하기 위해서 상속하는 추상 클래스

Font Picker

  • class UIFontPickerViewController Beta

  • protocol UIFontPickerViewControllerDelegate Beta

  • class UIFontPickerViewControllerConfiguration Beta

단어 조회

  • class UIReferenceLibraryViewController 단어나 용어의 정의를 조회하기 위한 표준 인터페이스를 표시하는 view controller

프린터 선택

  • class UIPrinterPickerController 프린터 선택용 표준 인터페이스를 보여주는 view controller

프레젠테이션 컨트롤러

  • Disabling Pulling Down a Sheet Disable the sheet pull-down gesture when dismissal would be destructive.

  • class UIPresentationController 전환 애니메이션과 화면상 view controller의 표시를 관리하는 객체

인터페이스 복원

  • 앱 시작시 UI 유지하기 시스템에 의해서 앱이 종료된 이후에도 이전 상태를 반환합니다.

  • protocol UIViewControllerRestoration view controller들이 상태 복원중에 "복원 클래스"로 동작할수 있도록 객체가 채택하는 메서드들

  • protocol UIObjectRestoration 복원 클래스가 보존된 객체를 복원하는데 사용하는 인터페이스

  • protocol UIStateRestoring 상태 복원 아카이브에 객체를 추가하는 메서드들

인터페이스 방향

  • func UIInterfaceOrientationIsPortrait(UIInterfaceOrientation) 유저 인터페이스가 현재 세로 방향으로 표시되고 있는지 Boolean값을 반환하는 함수

  • func UIInterfaceOrientationIsLandscape(UIInterfaceOrientation) 유저 인터페이스가 현재 세로 방향으로 표시되고 있는지 Boolean값을 반환하는 함수

같이 보기

  • 뷰 레이아웃 Stack View를 사용해서 인터페이스를 자동으로 배치하고 View를 정교하게 배치해야 하는 경우 자동 레이아웃을 사용하세요.

  • Appearance Customization Add Dark Mode support to your app, customize the appearance of bars, and use appearance proxies to modify your UI.

  • 윈도우와 스크린

    뷰 계층 구조 및 기타 컨텐츠를 위한 컨테이너를 제공합니다.

class 검색창과의 상호작용을 기반으로 검색결과 표시를 관리하는 view controller

화면에 컨텐츠를 표시하고 해당 컨텐츠에 상호작용을 지정하세요.

뷰 기반 애니메이션 햅틱을 사용하여 사용자에게 피드백을 제공합니다.

https://developer.apple.com/documentation/uikit/view_controllers
UIViewController
UITableViewController
UISearchController
뷰와 컨트롤
애니메이션과 햅틱