适配
2016-02-19 09:28
246 查看
适配
XXXXX-Prefix.pch
一般把适配相关的宏定义都写在这个文件中
*****
物理屏幕的适配:
#define DEVICE_IS)IPHONE5 ([UIScreen mainScreen].bounds.size.height == 568)
4英寸
#define SCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height
[UIScreen mainScreen].bounds.size.height
屏幕的高度
在布局的时候尽量用相对坐标
*****
软件的适配
6.0状态栏导航栏默认不透明
7.0以后状态栏导航栏都是透明
self.navigationController.navigationBar.translucent = NO;
判断版本办法
[UIDevice currentDevice].systemVersion.floatValue
当前系统版本
>= 7.0
使用扁平化图片
可以使用SKDK7.0+方法
注意导航栏与状态栏的UI布局
< 7.0
使用拟物化图片
只能使用7.0以下方法
现在适配的潜规则是适配5.0~7.1
*****
ipad 与iphone 的适配
#define IS_IPAD ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
ipad
UIUserInterfaceIdiomPhone
iPhone
注意ipad特有的方法与类
*****
xib的布局适配
通过设置停靠模式 来等比例拉伸等
在xib中修改autosizing
在右边栏第一个tab的Use Autolayout 的勾去掉
手写代码:
@property(nonatomic) UIViewAutoresizing autoresizingMask; // simple resize. default is UIViewAutoresizingNone
设置UIView的这个属性 枚举 6个值
****
类和方法是否可用
[XXXX class]
+ (Class)class;
if 条件 判断是否可用
[XXXX instancesRespondToSelector:@selector(XXX)]
+ (BOOL)instancesRespondToSelector:(SEL)aSelector];
if 条件 判断方法是否可用
XXXXX-Prefix.pch
一般把适配相关的宏定义都写在这个文件中
*****
物理屏幕的适配:
#define DEVICE_IS)IPHONE5 ([UIScreen mainScreen].bounds.size.height == 568)
4英寸
#define SCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height
[UIScreen mainScreen].bounds.size.height
屏幕的高度
在布局的时候尽量用相对坐标
*****
软件的适配
6.0状态栏导航栏默认不透明
7.0以后状态栏导航栏都是透明
self.navigationController.navigationBar.translucent = NO;
判断版本办法
[UIDevice currentDevice].systemVersion.floatValue
当前系统版本
>= 7.0
使用扁平化图片
可以使用SKDK7.0+方法
注意导航栏与状态栏的UI布局
< 7.0
使用拟物化图片
只能使用7.0以下方法
现在适配的潜规则是适配5.0~7.1
*****
ipad 与iphone 的适配
#define IS_IPAD ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
ipad
UIUserInterfaceIdiomPhone
iPhone
注意ipad特有的方法与类
*****
xib的布局适配
通过设置停靠模式 来等比例拉伸等
在xib中修改autosizing
在右边栏第一个tab的Use Autolayout 的勾去掉
手写代码:
@property(nonatomic) UIViewAutoresizing autoresizingMask; // simple resize. default is UIViewAutoresizingNone
设置UIView的这个属性 枚举 6个值
****
类和方法是否可用
[XXXX class]
+ (Class)class;
if 条件 判断是否可用
[XXXX instancesRespondToSelector:@selector(XXX)]
+ (BOOL)instancesRespondToSelector:(SEL)aSelector];
if 条件 判断方法是否可用