iOS屏幕适配之通过代码实现控件按比例缩放

众所周知,随着6和6p的出现,iphone手机的屏幕大小出现了多样化,再加上ipad,于是屏幕适配成为了一个非常棘手的问题,一直以来也没有出现一种比较科学统一而又效果不错的适配方法。

这里简单介绍一种适配的方法,就是控件按照屏幕的比例进行放大。

因此在设计界面的时候我通常是按照5和5s来设计控件的大小和位置,然后再根据屏幕横向比例来缩放控件和控件位置

具体实现如下

1.宏定义

#define SCREEN_RATE (320/[UIScreen mainScreen].bounds.size.width)

2.实现方法

- (CGRect)newSuitFrame:(CGRect)frame
{
    CGRect newFrame;

    newFrame.size.height = frame.size.height/SCREEN_RATE;
    newFrame.size.width = frame.size.width/SCREEN_RATE;
    newFrame.origin.x = frame.origin.x/SCREEN_RATE;
    newFrame.origin.y = frame.origin.y/SCREEN_RATE;
    
    return newFrame;
}

3.调用

 UIButton *btnChangeImage = [[UIButton alloc] initWithFrame:[self newSuitFrame:CGRectMake(5, 568 - 33, 50, 30)]];

注意:用这种方法有时候界面上的控件相关的图片要做好适当调整,防止失真。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值