屏幕适配

43 篇文章 0 订阅
系统适配:
       ios7中新出来的方法如果跑到ios6上面可能会报错,报错找不到方法,所以需要判断当前系统的版本,做不同的适配.
屏幕适配:

       安坐手机各种屏幕都有,工作量是比较大的,自从iPhone5出来之后,屏幕就开始慢慢拉长,苹果因此需要做屏幕适配.我们都知道在iPhone4之前是没有适配的,因为那个时候的手机屏幕都是一样,所以一般哪些坐标值都是写死的代码,因为屏幕不会改变.自从iPad出现以后,需要横竖屏适配.

     我们说一下自从要做屏幕适配以来,各种适配方式的发展历程

一.Autoresizing

Autoresizing-storyboard上的操作

autoresizing是不能与autolayout共存的,把对勾去掉

布局
                右边-->autoresizing-->6根线
               上下左右的线是用来固定和父控件的间距
               中间的线是用来设置宽度和高度跟随父控件进行伸缩
autoresizing是存在局限性的:只能相对父控件布局,而不能相对同级(兄弟控件)进行布局
autoresizing是不能与autolayout共存的,把对勾去掉

04-Autoresizing-代码实现
    

 autoresizingMask
     UIViewAutoresizingFlexibleLeftMargin 距离父控件的左边是可以拉伸的
     UIViewAutoresizingFlexibleBottomMargin 距离父控件的底部是可以拉伸的
     UIViewAutoresizingFlexibleRightMargin 距离父控件的右边是可以拉伸的
     UIViewAutoresizingFlexibleTopMargin  距离父控件的顶部是可以拉伸的
     UIViewAutoresizingFlexibleHeight 高度会跟随父控件的高度进行伸缩
     UIViewAutoresizingFlexibleWidth   宽度会跟随父控件的宽度进行伸缩
由于autoresizing聚在局限性,所以推出了autolayout
自动布局.autoresizing存在布局上的短板,只能对父控件进行布局,但是开发中的需求不仅仅与此,所以auto layout众望所归站上了历史的舞台.autolayout是通过约束来确定一个空间的位置和尺寸.谁距离当前空间最近,有限用最近距离的作参照.    
■    Autolayout的2个核心概念
        约束:通过给控件添加约束,来决定控件的位置和尺寸
        参照:在添加约束时,是依照谁来添加(可以是父控件或者兄弟控件)
●    自动布局的核心计算公式
obj1.property1 =(obj2.property2 * multiplier)+ constant value

由于苹果官方对于实现auto layout的代码非常恶心,所以引用了目前最流行的AUtolayout的第三方框架,用比较优雅的代码方式编写Auto layout省去了苹果官方恶心的代码,大大提高编码开发效率
代码示例:
 

 [blueView makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(self.view.left).offset(30);
        make.right.equalTo(redView.left).offset(-30);
        make.bottom.equalTo(self.view.bottom).offset(-30);
        make.width.equalTo(redView.width);
        make.height.equalTo(50);
    }];


   


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值