iOS-autoresizingMask使用详解

iPhone手机现在尺寸也有很多种,所以写一个控件要适配多种尺寸,过去那种写一个固定的距离或者坐标的情况,已经行不通了.

iOS有两大布局利器:autoresizing 和 autolayout(autolayout是IOS6以后新增)。autoresizing是UIView的属性,一直存在,使用也比较简单,虽然没有autolayout那样强大,但是如果你的界面比较简单,要求的细节没有那么高,那么你完全可以使用autoresizing去进行自动布局。

1.autoresizing简介

UIViewAutoresizing是一个枚举类型,默认是UIViewAutoresizingNone

typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) {
    UIViewAutoresizingNone                 = 0,
    UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,
    UIViewAutoresizingFlexibleWidth        = 1 << 1,
    UIViewAutoresizingFlexibleRightMargin  = 1 << 2,
    UIViewAutoresizingFlexibleTopMargin    = 1 << 3,
    UIViewAutoresizingFlexibleHeight       = 1 << 4,
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};

枚举解释:

枚举值 解释
UIViewAutoresizingNone 不会随父视图的改变而改变
UIViewAutoresizingFlexibleLeftMargin 自动调整view与父视图左边距,以保证右边距不变
UIViewAutoresizingFlexibleWidth 自动调整view的宽度,保证左边距和右边距不变
UIViewAutoresizingFlexibleRightMargin 自动调整view与父视图右边距,以保证左边距不变
UIViewAutoresizingFlexibleTopMargin 自动调整view与父视图上边距,以保证下边距不变
UIViewAutoresizingFlexibleHeight 自动调整view的高度,以保证上边距和下边距不变
UIViewAutoresizingFlexibleBottomMargin 自动调整view与父视图的下边距,以保证上边距不变

推荐阅读更多精彩内容

  • 前言 iPhone自诞生以来,随着其屏幕尺寸不断的多样化,屏幕适配的技术一直在发展更新。目前,iOS系统版本已经更...
    VV木公子阅读 10,512评论 25 147
  • 人生是一个很奇妙的东西,你永远不知道,下一步迎接你的将会是什么,但是梦想永远是个不会改变的东西,只要你认定他,...
    鍩睿阅读 22评论 0 0
  • 杀了一天时间,休假。从睁眼开始玩手机,一直到睡觉,眼睛都模糊了。累,空虚了
    石头岛阅读 16评论 0 0