iOS 8引入了可在Storyboard和Xib中使用的新屏幕类型,我可以在代码中检测这些类型吗?如果有,怎么样?
在这里您可以找到更多相关信息https://developer.apple.com/library/content/releasenotes/General/WhatsNewIniOS/Articles/iOS8.html
Dan*_*iel 45
是的,你可以,UIViewControllers现在有一个 traitCollection
属性,其中包含从设备习惯用法到当前大小类等的信息......此外,您可以实现该方法 func traitCollectionDidChange(previousTraitCollection: UITraitCollection)
,以便在大小类(或任何特征)发生变化时获取通知(如同用户在iphone上旋转设备.UITraitCollection,您正在寻找的属性horizontalSizeClass
和verticalSizeClass
..Here是一个参考
希望有所帮助
您还可以使用以下扩展名检测设备类型及其方向:
extension UITraitCollection {
var isIpad: Bool {
return horizontalSizeClass == .regular && verticalSizeClass == .regular
}
var isIphoneLandscape: Bool {
return verticalSizeClass == .compact
}
var isIphonePortrait: Bool {
return horizontalSizeClass == .compact && verticalSizeClass == .regular
}
var isIphone: Bool {
return isIphoneLandscape || isIphonePortrait
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11894 次 |
最近记录: |