iOS 에서 화면에 애플리케이션의 컨텐츠를 나타내기 위해 윈도우와 뷰를 사용한다.
윈도우는 그자체로 컨텐츠를 표현할 수 없지만, 애플리케이션의 뷰를 위한 컨테이너 역할을 한다.
뷰는 UIView 클래스 또는 UIView 클래스의 하위클래스(Subclass)의 인스턴스로 윈도우의 한 영역에서 컨텐츠를 보여준다. 뷰가 나타낼 수 있는 컨텐츠는 이미지, 문자, 도형 등과 같이 다양하다. 뷰는 또 다른 뷰를 관리하고 구성하기 위해 사용되기도 한다.
뷰는 제스처 인식기(Gesture Recognizer)를 사용하거나 직접 터치 이벤트를 처리할 수 있다. 또한 뷰 계층(View hierarchy)구조에서 부모뷰(parent view)는 자식뷰(child View)의 위치와 크기를 관리한다.
나타내고자 하는 유형의 컨텐츠에 적합한 뷰를 여러 개 사용하여 뷰 계층(view hierarchy) 구조를 구성하고 이를 통해 컨텐츠를 보여주는 것이 좋다. 예를 들어 UIKit에는 이미지, 텍스트 그리고 다른 유형의 컨텐츠를 나타내는 뷰가 포함되어있다.
뷰는 자신의 컨텐츠를 보여주는 것과 더불어서, 다른 뷰를 위한 컨테이너 역할도 한다. 하나의 뷰가 다른 뷰를 포함할 때, 두 뷰 사이에는 부모-자식 관계가 생성된다. 이 관계에서 자식뷰는 서브뷰(Subview)로, 부모뷰는 슈퍼뷰(Superview)로 불려진다. 부모-자식 관계 형성은 애플리케이션의 시각적 모습과 동작 모두에 영향을 미치게 된다.