您的位置:首页 > 移动开发 > IOS开发

iOS代码适配(2)

2015-06-09 15:08 417 查看
1. 首先我们看一下 iphone 5(s) ,iphone 6和6 plus 的屏幕比例



所以, 我们可以用比例来适配三者的屏幕.

2.在Appdelegate.h

@property float autoSizeScaleX;
@property float autoSizeScaleY;

如图所示:



3.在appDelegate.m中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

AppDelegate *myDelegate = [[UIApplication sharedApplication] delegate];

if(ScreenHeight > 480){

myDelegate.autoSizeScaleX = ScreenWidth/320;

myDelegate.autoSizeScaleY = ScreenHeight/568;

}else{

myDelegate.autoSizeScaleX = 1.0;

myDelegate.autoSizeScaleY = 1.0;

}

}
如图所示:





因为iPhone4s屏幕的高度是480,因此当屏幕尺寸大于iPhone4时,autoSizeScaleX和autoSizeScaleY即为当前屏幕和iPhone5尺寸的宽高比

5.在.pch中或者 全局的那种头文件里面写

CG_INLINE CGRect CGRectMakeScreen(CGFloat x, CGFloat y, CGFloat width, CGFloat height)

{

AppDelegate *myDelegate = [[UIApplication sharedApplication] delegate];

CGRect rect;

rect.origin.x = x * myDelegate.autoSizeScaleX; rect.origin.y = y * myDelegate.autoSizeScaleY;

rect.size.width = width * myDelegate.autoSizeScaleX; rect.size.height = height * myDelegate.autoSizeScaleY;

return rect;

}



或者写到全局的头文件里面,我的是header.h



6.使用

用CGRectMakeScreen 代替原本的CGRectmake 就好了

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: