关于iPhone适配

由于一直使用代码码的控件。适配上相对xib的autolayout来说会相对繁琐点。

iPhone6跟plus相对5来说遵循一定的缩放比例,所以投巧想了办法。

objective-c  先定义2个宏

#define scale_width [[UIScreen mainScreen] bounds].size.width/320

#define scale_height [[UIScreen mainScreen] bounds].size.height/568

把以前固定死的坐标按屏幕相对5的尺寸进行等比例缩放

例:

CGRectMake(80*scale_width, (self.frame.size.height - contentHeight) / 2, 160*scale_width, contentHeight)


swift  由于swift无法像oc一样定义,所以需要换成方法

func getScaleWidth() -> CGFloat! {

   return CGFloat(UIScreen.mainScreen().bounds.size.width/320.0)

}

func getScaleHeight() -> CGFloat! {

   return CGFloat(UIScreen.mainScreen().bounds.size.height/568.0)

}

CGRectMake(

CGFloat(160)*CommonSwift().getScaleWidth(),

CGFloat(158)*CommonSwift().getScaleHeight(),

CGFloat(160)*CommonSwift().getScaleWidth(),

CGFloat(20)*CommonSwift().getScaleHeight()

)





你可能感兴趣的:(关于iPhone适配)