特質收藏

在 iOS 應用程式中,你的使用者介面可以採用幾種不同的常規形狀和大小中的一種。這些是使用大小類定義的,這些大小類可通過檢視或檢視控制器的特徵集合獲得

Apple 定義了兩個大小類: 常規緊湊。這些尺寸等級中的每一個都可在裝置的兩個軸上使用( 水平垂直 )。你的應用可能在其整個生命週期中存在於任何這四種狀態。作為簡寫,開發人員通常通過說或寫兩個大小類來描述大小類組合,水平軸首先:“Compact / Regular”描述一個水平緊湊但垂直規則的介面。

在你的應用程式中,使用 UITraitEnvironment 協議上的方法檢查當前的大小類並響應更改:

class MyViewController: UIViewController {
    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        print("Horizontal size class: \(traitCollection.horizontalSizeClass)")
        print("Vertical size class: \(traitCollection.verticalSizeClass)")
    }

    override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
        super.traitCollectionDidChange(previousTraitCollection)
        print("Trait collection changed; size classes may be different.")
    }
}

UIView 和 UIViewController 都符合 UITraitEnvironment,因此你可以檢視當前的特徵集合並處理其子類中的更改。