iOS小技巧---swift 判断IOS版本及适配



operatingSystemVersionspa

为了更复杂的版本比较,operatingSystemVersion可以被直接检查。将它和Swift模式比较和switch语句组合,可使得代码更简洁。code


let os = NSProcessInfo().operatingSystemVersionorm

switch  (os.majorVersion, os.minorVersion, os.patchVersion) {
case  (8, _, _):
     println( "iOS >= 8.0.0" )
case  (7, 0, _):
     println( "iOS >= 7.0.0, < 7.1.0" )
case  (7, _, _):
     println( "iOS >= 7.1.0, < 8.0.0" )
default :
     println( "iOS < 7.0.0" )

}it





UIDevice systemVersionio

惋惜的是,新NSProcessInfo API目前并非特别有用,由于它们在iOS 7上不生效。class

做为替代,可使用systemVersion属性UIDevice来进行检查:call

switch  UIDevice.currentDevice().systemVersion.compare( "8.0.0" , options: NSStringCompareOptions.NumericSearch) {
case  .OrderedSame, .OrderedDescending:
     println( "iOS >= 8.0" )
case  .OrderedAscending:
     println( "iOS < 8.0" )
}



适配屏幕 margin

        switch UIDevice.currentDevice().systemVersion.compare("7.0.0", options: NSStringCompareOptions.NumericSearch) {top

        case .OrderedSame, .OrderedDescending:di

            println("iOS >= 7.0")

            self.edgesForExtendedLayout = UIRectEdge.None

            self.automaticallyAdjustsScrollViewInsets = false

        case .OrderedAscending:

            println("iOS < 7.0")

        }

相关文章
相关标签/搜索