Views and Controls

Panther·2021년 8월 19일
0

https://developer.apple.com/documentation/uikit/views_and_controls

"Present your content onscreen and define the interactions allowed with that content."

컨텐트를 스크린에 나타내고 해당 컨텐트에 허용된 상호작용을 정의합니다.

Overview

뷰와 컨트롤은 앱 UI의 시각적 빌딩 블록입니다. 앱 컨텐트를 화면에 드로잉하고 조직화하기 위해 뷰와 컨트롤을 사용하시기 바랍니다.

뷰는 다른 뷰를 호스트할 수 있습니다. 하나의 뷰를 다른 뷰에 끼워넣는 것은 호스트 뷰(슈퍼뷰라고 알려진)와 끼워진 뷰(하위뷰라고 알려진) 사이의 포함관계를 생성합니다. 뷰 계층구조는 뷰를 더 쉽게 관리할 수 있게 해줍니다.

아래 내용과 관련한 작업을 수행하기 위해서 뷰를 사용할 수도 있습니다.

  • 터치 및 기타 이벤트에 응답합니다(직접적으로 혹은 제스쳐 리코그나이져와 함께).
  • 코어 그래픽스 혹은 UIKit 클래스를 사용해서 커스텀 컨텐트를 드로잉합니다.
  • 드래그 앤 드롭 상호작용을 지원합니다.
  • 포커스 변경에 응답합니다.
  • 크기, 위치, 뷰의 모양 특성을 애니메이션 처리합니다.

UIView는 모든 뷰에 대한 루트 클래스이고, 이러한 모든 뷰의 일반적인 동작을 정의합니다. UIControl은 버튼, 스위치, 기타 사용자 상호작용을 위해 디자인된 뷰에 특화된 추가적인 동작을 정의합니다.

뷰와 컨트롤 사용 방법에 대한 추가적인 정보는 iOS Human Interface Guidelines를 보시기 바랍니다. UIKit 컨트롤의 예시를 보려면 UIKit Catalog: Creating and Customizing Views and Controls를 보시기 바랍니다.

iOS Human Interface Guidelines
https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/

UIKit Catalog: Creating and Customizing Views and Controls
https://developer.apple.com/documentation/uikit/mac_catalyst/uikit_catalog_creating_and_customizing_views_and_controls

Topics


View Fundamentals

UIView

스크린에 있는 사각형 영역에서 컨텐트를 관리하는 객체입니다.

https://developer.apple.com/documentation/uikit/uiview
https://velog.io/@panther222128/UIView


Container Views

Collection Views

설정 가능하고 고수준으로 커스터마이징 가능한 레이아웃을 사용해서 중첩된 뷰를 표시합니다.

https://developer.apple.com/documentation/uikit/views_and_controls/collection_views
https://velog.io/@panther222128/Collection-Views

Table Views

커스터마이징 가능한 행들로 구성된 하나의 열에 데이터를 표시합니다.

https://developer.apple.com/documentation/uikit/views_and_controls/table_views
https://velog.io/@panther222128/Table-Views

UIStackView

열 혹은 행에 뷰의 컬렉션을 배치하기 위한 간단한 인터페이스입니다.

https://developer.apple.com/documentation/uikit/uistackview
https://velog.io/@panther222128/UIStackView

UIScrollView

포함된 뷰의 스크롤링 및 확대, 축소를 허용하는 뷰입니다.

https://developer.apple.com/documentation/uikit/uiscrollview
https://velog.io/@panther222128/UIScrollView


Content Views

UIActivityIndicatorView

작업이 진행중임을 보여주는 뷰입니다.

https://developer.apple.com/documentation/uikit/uiactivityindicatorview
https://velog.io/@panther222128/UIActivityIndicatorView

UIImageView

인터페이스에서 단일 이미지 혹은 애니메이션 처리된 이미지의 연속을 표시하는 객체입니다.

https://developer.apple.com/documentation/uikit/uiimageview
https://velog.io/@panther222128/UIImageView

UIPickerView

하나 혹은 하나 이상의 값 집합을 보여주기 위해 돌아가는 휠 혹은 슬롯 머신과 유사한 것을 사용하는 뷰입니다.

https://developer.apple.com/documentation/uikit/uipickerview
https://velog.io/@panther222128/UIPickerView

UIProgressView

작업의 진행을 시간에 걸쳐 표시하는 뷰입니다.

https://developer.apple.com/documentation/uikit/uiprogressview
https://velog.io/@panther222128/UIProgressView


Controls

UIControl

사용자 상호작용에 대한 응답으로 특정 액션 혹은 의도를 전달하는 시각적 요소인 컨트롤에 대한 베이스 클래스입니다.

https://developer.apple.com/documentation/uikit/uicontrol
https://velog.io/@panther222128/UIControl

UIButton

사용자 상호작용에 응답해 커스텀 코드를 실행하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uibutton
https://velog.io/@panther222128/UIButton

UIColorWell

컬러 피커를 표시하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uicolorwell
https://velog.io/@panther222128/UIColorWell

UIDatePicker

날짜 및 시간 값 입력을 위한 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uidatepicker
https://velog.io/@panther222128/UIDatePicker

UIPageControl

각각이 앱의 문서 혹은 다른 데이터 모델 엔티티에 상응하는 점의 연속을 수평으로 표시하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uipagecontrol
https://velog.io/@panther222128/UIPageControl

UISegmentedControl

여러 세그먼트를 구성하는 수평 컨트롤이며, 각 세그먼트는 이산적 버튼처럼 기능합니다.

https://developer.apple.com/documentation/uikit/uisegmentedcontrol
https://velog.io/@panther222128/UISegmentedControl

UISlider

값의 연속적 범위로부터 하나의 값을 선택하기 위한 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uislider
https://velog.io/@panther222128/UISlider

UIStepper

값의 증가 혹은 감소를 위한 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uistepper
https://velog.io/@panther222128/UIStepper

UISwitch

온/오프처럼 이진 선택을 제공하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uiswitch
https://velog.io/@panther222128/UISwitch


Text Views

텍스트 뷰를 사용해서 텍스트를 표시하고 편집합니다.

UILabel

하나 혹은 하나 이상의 라인으로 정보를 담는 텍스트를 표시하는 뷰입니다.

https://developer.apple.com/documentation/uikit/uilabel
https://velog.io/@panther222128/UILabel

UITextField

인터페이스에서 편집 가능한 텍스트 영역을 표시하는 객체입니다.

https://developer.apple.com/documentation/uikit/uitextfield
https://velog.io/@panther222128/UITextField

UITextView

스크롤 가능한 다중 라인의 텍스트 영역입니다.

https://developer.apple.com/documentation/uikit/uitextview
https://velog.io/@panther222128/UITextView

Drag and Drop Customization

텍스트 뷰에 표준 드래그 앤 드롭 지원을 확장해서 컨텐트의 커스텀 타입을 포함하도록 합니다.

https://developer.apple.com/documentation/uikit/views_and_controls/drag_and_drop_customization
https://velog.io/@panther222128/Drag-and-Drop-Customization


Search Field

UISearchTextField

텍스트 및 검색 토큰을 표시하고 편집하기 위한 뷰입니다.

https://developer.apple.com/documentation/uikit/uisearchtextfield
https://velog.io/@panther222128/UISearchTextField

UISearchToken

검색 텍스트 필드에서 나타나는 검색 기준이며, 텍스트 및 선택적 아이콘으로 표현됩니다.

https://developer.apple.com/documentation/uikit/uisearchtoken
https://velog.io/@panther222128/UISearchToken


Visual Effects

UIVisualEffect

비주얼 이펙트 뷰, 블러, 바이브런시 효과 객체에 대한 이니셜라이저입니다.

https://developer.apple.com/documentation/uikit/uivisualeffect
https://velog.io/@panther222128/UIVisualEffect

UIVisualEffectView

몇 가지 복잡한 시각적 효과를 구현하는 객체입니다.

https://developer.apple.com/documentation/uikit/uivisualeffectview
https://velog.io/@panther222128/UIVisualEffectView

UIVibrancyEffect

비주얼 이펙트 뷰 뒤에 계층이 된 컨텐트의 색상을 증폭하고 조정하는 객체입니다.

https://developer.apple.com/documentation/uikit/uivibrancyeffect
https://velog.io/@panther222128/UIVibrancyEffect

UIBlurEffect

비주얼 이펙트 뷰 뒤에 계층이 된 컨텐트로 블러 효과를 적용하는 객체입니다.

https://developer.apple.com/documentation/uikit/uiblureffect
https://velog.io/@panther222128/UIBlurEffect


Bars

Manage the items displayed on navigation bars, tab bars, search bars, and tool bars.

UIBarItem

스크린 하단에 나타나는 바에 추가할 수 있는 아이템의 추상 슈퍼클래스입니다.

https://developer.apple.com/documentation/uikit/uibaritem
https://velog.io/@panther222128/UIBarItem

UIBarButtonItem

툴바 혹은 탭바에 놓이는 특수한 버튼입니다.

https://developer.apple.com/documentation/uikit/uibarbuttonitem
https://velog.io/@panther222128/UIBarButtonItem

UIBarButtonItemGroup

아이패드에 나타나는 키보드 위의 숏컷 바에 있는 바 버튼 아이템의 집합입니다.

https://developer.apple.com/documentation/uikit/uibarbuttonitemgroup
https://velog.io/@panther222128/UIBarButtonItemGroup

UINavigationBar

보통의 경우 네비게이션 컨트롤러와 함께 스크린 상단에 따라 바에서 표시되는 네비게이션의 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uinavigationbar
https://velog.io/@panther222128/UINavigationBar

UISearchBar

사용자로부터 검색 관련 정보를 받기 위한 특수한 뷰입니다.

https://developer.apple.com/documentation/uikit/uisearchbar
https://velog.io/@panther222128/UISearchBar

UIToolbar

인터페이스의 하단 edge를 따라 하나 혹은 하나 이상의 버튼을 표시하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uitoolbar
https://velog.io/@panther222128/UIToolbar

UITabBar

앱에서 다른 하위작업, 뷰, 모드 사이를 선택할 수 있도록 탭바에 있는 하나 혹은 하나 이상의 버튼을 표시하는 컨트롤입니다.

https://developer.apple.com/documentation/uikit/uitabbar
https://velog.io/@panther222128/UITabBar

UITabBarItem

탭바에서 아이템을 나타내는 객체입니다.

https://developer.apple.com/documentation/uikit/uitabbaritem
https://velog.io/@panther222128/UITabBarItem


Content Viewer

UILargeContentViewerInteraction

가장 큰 동적 타입 크기가 적합하지 않은 경우에 큰 컨텐트 뷰어를 나타내는 제스쳐를 활성화시키기 위한 상호작용입니다.

https://developer.apple.com/documentation/uikit/uilargecontentviewerinteraction
https://velog.io/@panther222128/UILargeContentViewerInteraction


Private Click Measurement (PCM)

UIEventAttributionView

Private Click Measurement에서 사용자 상호작용 검증을 하는 오버레이 뷰입니다.

https://developer.apple.com/documentation/uikit/uieventattributionview
https://velog.io/@panther222128/UIEventAttributionView

UIEventAttribution

Private Click Measurement에 대한 이벤트 특성 정보를 포함하는 객체입니다.

https://developer.apple.com/documentation/uikit/uieventattribution
https://velog.io/@panther222128/UIEventAttribution

See Also


User Interface

View Controllers

View Layout

Appearance Customization

Animation and Haptics

Windows and Screens


0개의 댓글