How to check in which position (landscape or portrait) is the iPhone now?

后端 未结 13 1186
旧巷少年郎
旧巷少年郎 2021-01-30 06:47

I have an app with a tab bar, and nav controllers in each tab. When user shakes the device, a UIImageView appears as a child view in the nav controller. But the

13条回答
  •  青春惊慌失措
    2021-01-30 07:30

    Updating this to iOS 8+ where the UIViewController.interfaceOrienation is deprecated, you should use traitCollections. So for example, to check for landscape on iPhone, you'd use:

    if self.traitCollection.verticalSizeClass == .compact
    {
      your code
    }
    

    Notice that this is not the case on iPad, because on iPad in landscape, the size class is not compact. Apple Doc Link

提交回复
热议问题