intrinsicContentSizeとは何者なのか?
- AutoLayout を使用した時に表示されるある View の最低サイズ
- UIView の iOS6 以降から使用可能なプロパティ
いつ使うのか?
通常はその View の最低サイズを読み取る際に使用されますが、AutoLayout で設定される View のサイズを動的に変更したい場合などにはサブクラス内でプロパティをオーバーライドすることで使用することもできます。
override var intrinsicContentSize: CGSize { let superSize = super.intrinsicContentSize let newSize = CGSize(superSize.width, superSize.height + 30) return newSize }
こんな感じで AutoLayout で決まった高さ + 30pt したい!みたいな状況で intrinsicContentSize
をしようすることで動的に高さを変更することが可能です。
公式: https://developer.apple.com/documentation/uikit/uiview/1622600-intrinsiccontentsize