Intrinsic Size 는 Content의 본질적인 크기이다. 모든 view가 Intrinsic Size를 갖는 것이 아니다. 대표적인 예로는 UILabel, UIButton등을 들 수 있다. UILabel에서 컨텐츠의 길이가 변하면 자동으로 계산해주는 것에 사용되는 것과 같습니다.

또한 각각의 view마다 Intrinsic size가 적용되는 방식이 다르다.

Intrinsic Content Size

Apple Developer Documentation

Intrinsic content size는 view의 자연스러운 사이즈이다. 이때의 사이즈는 view의 속성들만 고려한 사이즈라 할 수 있다. 예를 들어, UIButton의 Intrinsic Content Size는 Title Size + margin이다. 또한 모든 view에 Intrinsic Content size가 있는 것은 아니다


View와 Intrinsic Content Size


Example

@IBOutlet weak var slider: UISlider!
@IBOutlet weak var button: UIButton!

override func viewDidLoad() {
	super.viewDidLoad()
        
        print("UIView - (w: \\(self.view.intrinsicContentSize.width), h: \\(self.view.intrinsicContentSize.height))")
        print("UISlider - (w: \\(slider.intrinsicContentSize.width), h: \\(slider.intrinsicContentSize.height))")
        print("UIButton - (w: \\(button.intrinsicContentSize.width), h: \\(button.intrinsicContentSize.height))")
}

스크린샷 2022-11-10 오후 3.46.58.png