屏幕适配
iPhone4之前
- 没有适配,不用适配
- 经常会出现坐标值写死的代码
//#define ScreenW 320 //#define ScreenH 480 #define ScreenW [UIScreen mainScreen].bounds.size.width #define ScreenH [UIScreen mainScreen].bounds.size.height // 创建一个显示在屏幕右下角的按钮 CGFloat buttonW = 100; CGFloat buttonH = 50; button.frame = CGRectMake(ScreenW - buttonW, ScreenH - buttonH, buttonW, buttonH);
iPad出现以后
- 需要横竖屏适配
- 出现了一种方便的屏幕适配技术:Autoresizing
- 局限性:仅仅能解决子控件和父控件之间的相对关系问题
iOS6开始(Xcode4开始)
- 出现了一种新的屏幕适配技术:Autolayout
- 解决任何控件之间的相对关系问题
iOS8开始(Xcode6开始)
- 出现了一种新的屏幕适配技术:Sizeclass