IOS开发指南读书笔记8(AutoLayout) 2

原创 2015年11月18日 11:38:37
IOS开发指南读书笔记8(AutoLayout)
其原理类似Android的RelativeLayout,适用于IOS6以上。如果不同约束有冲突,回遵循优先级的高的约束。


一、可以设定的约束有
1、高度、宽度
至少,等于,至多一个数值
至少,等于,至多为其他控件的宽度,高度
2、对齐方式
与父控件
头部(左边Leading)对齐,尾部(右边Trailing)对齐,顶部对齐,底部对齐,水平中心对齐,垂直中心对齐,头部边缘对齐,尾部边缘对齐,顶部边缘对齐,底部边缘对齐
与其他控件头部(左边Leading)对齐,尾部(右边Trailing)对齐,顶部对齐,底部对齐,水平中心对齐,垂直中心对齐,头部边缘对齐,尾部边缘对齐,顶部边缘对齐,底部边缘对齐,文本标线对齐
3、距离
距离父控件的顶部,底部,头部,尾部  
至少,等于,至多于一个数值
距离其他控件的
顶部,底部,头部,尾部    至少,等于,至多于一个数值

二、Xib实现,略(自己尝试)

三、代码实现
默认规则
1、 | 表示父视图
2、 -表示距离
3、 V
表示垂直
4、 H表示水平(不写表示水平)
5、>= 表示至少
6、 == 表示等于 (不写表示等于)
7、 <= 表示至多
8、 @  表示优先级    1000以内 

实际运用
1、宽度,高度设定
 (1)   
[view(==200.0)]     [view(>=200.0)]             [view(<=200.0)]
 宽度   等于                      至少                       至多           为200
(2)V:[view(==50.0)]     V:[view(>=50.0)]          V:[view(<=50.0)] 
 高度   等于                      至少                       至多           为200 
(3)
[view(==view1)]         [view(>=view1)]              [view(<=view1)] 
 宽度   等于                      至少                       至多           为View1的宽度
(4)
V:[view(==view2)]      V:[view(==view2)]        V:[view(==view2)] 
高度    等于                      至少                       至多           为View1的高度度
 
 2
、对齐设定
 (1)
|[view]          [view]|            V:|[view]         V:[view]|
对齐父控件头部          尾部                 顶部                底部
(2) 
|-[view]          [view]-|            V:|-[view]         V:[view]-|
对齐父控件头部          尾部                 顶部                底部边缘
 
(3)参数
NSLayoutAttributeCenterX,NSLayoutAttributeCenterY,
NSLayoutAttributeLeft,NSLayoutAttributeRight
NSLayoutAttributeTop, NSLayoutAttributeBottom
NSLayoutAttributeLeading,NSLayoutAttributeTrailing
 
NSLayoutAttributeBaseline


3、距离 
(1)在父视图中间
|-[View]-|
(2)距离父视图左右30
|-30-[View]-30-|
(3) 
距离父视图上下30
V:
|-30-[View]-30-|


4、其他
(1)|-[view]->=30-[view1]-|
水平排布,两个View在父视图内,中间间隔至少30

IOS开发指南读书笔记2(应用程序的生命周期)

1、程序的五种状态 Not Running:未运行。 Inactive:前台非活动状态。处于前台,但是不能接受事件处理。 Active:前台活动状态。处于前台,能接受事件处理。 Backgro...

2-读书笔记----iOS开发指南:从零基础到App Store上架--iOS视图和控件

视图和控件 UIView“家族” UIView类的继承层次 应用界面的构建层次 iOS应用界面是由若干个视图构建而成的,这些视图对象采用树形构建 视图分类 为了便于开发,苹果将UIKi...
  • blacet
  • blacet
  • 2015年11月20日 00:12
  • 693

IOS开发指南读书笔记1(Xcode的基本使用)

IOS开发指南读书笔记1(Xcode的基本使用) 1、用Xcode创建工程 Product Name:工程名字 Organization Name:组织名字 Company Identifier:...

《iOS开发指南:从零基础到App Store上架》读书笔记(二)

P230 NSLayoutManager、NSTextContainer、NSTextStorage之间究竟是什么关系呢?NSLayoutManager对象从NSTextStorage对象中取得文本内...

4-读书笔记----iOS开发指南:从零基础到App Store上架--iOS视图控制器与导航模式

视图控制器与导航模式 介绍平铺导航、标签导航、树形结构导航的使用方式 与导航相关的视图控制器整理如下。  UIViewController。用于自定义视图控制器的导航。例如,对于两个界面的...
  • blacet
  • blacet
  • 2015年11月30日 01:14
  • 696

1-读书笔记----iOS开发指南:从零基础到App Store上架--iOS入门

iOS的系统架构分为4层——Cocoa Touch层、Media层、Core Services层和Core OS层 AppDelegate类是应用程序委托对象,这个类中继承的一系列方法在应用生...
  • blacet
  • blacet
  • 2015年11月08日 21:46
  • 909

5-读书笔记----iOS开发指南:从零基础到App Store上架--iOS常用设计模式

iOS常用设计模式 软件设计模式大都来源于GoF1的23种设计模式。 选择了如下4 种设计模式:单例模式、委托模式、观察者模式和MVC模式。 单例模式  单例模式的作用是解决“应用中只有一个实例”...
  • blacet
  • blacet
  • 2015年12月02日 00:26
  • 614

IOS开发指南读书笔记12(IOS数据持久层的建立4)

IOS开发指南读书笔记12(IOS数据持久层的建立4)  建立CoreData需要首先建立一个模型文件 生成的后缀是xcdatamodeid,但是编译之后在沙盒的momd文件 首先A...

12-读书笔记----iOS开发指南:从零基础到App Store上架--iOS-数据持久化

iOS-国际化
  • blacet
  • blacet
  • 2016年05月13日 10:32
  • 333

6-读书笔记----iOS开发指南:从零基础到App Store上架--iOS-iPhone与iPad应用开发的差异和iOS分层架构设计

iPhone与iPad应用 开发的差异 由于iPhone和iPad尺寸不同,应用场景也不同,因此在导航模式上有比较大的差异,一些控件在展现方 式上会有很多差别,所以iPad有一些特有的API。 ...
  • blacet
  • blacet
  • 2015年12月10日 00:42
  • 630
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IOS开发指南读书笔记8(AutoLayout) 2
举报原因:
原因补充:

(最多只允许输入30个字)