iOS修行---Auto Layout学习1
来源:互联网 发布:pywin32 知乎 编辑:程序博客网 时间:2024/06/05 05:37
Auto Layout学习1
使用步骤:1.利用NSLayoutConstraint类创建约束对象 2.将约束对象添加到View上
例子:将一个正方形view加入vc中
UIView *centerView = [[UIView alloc]init]; [self.view addSubview:centerView]; centerView.backgroundColor = UIColorFromHex(0xFFEC8B, 1.0); centerView.translatesAutoresizingMaskIntoConstraints = NO;注:UIColorFromHex是我自己定义的宏
下面加入约束
NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:centerView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:150.0]; [self.view addConstraint:widthConstraint]; NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:centerView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:150]; [self.view addConstraint:heightConstraint]; NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:centerView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1.0 constant:200]; [self.view addConstraint:topConstraint]; NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:centerView attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeft multiplier:1.0 constant:100]; [self.view addConstraint:leftConstraint];这里简单介绍一下
constraintWithItem: 这里是要被约束的对象
attribute: 这里是约束种类(有好多种,下个文章分析吧)
relatedBy: 关系大小
typedef NS_ENUM(NSInteger, NSLayoutRelation) { NSLayoutRelationLessThanOrEqual = -1, NSLayoutRelationEqual = 0, NSLayoutRelationGreaterThanOrEqual = 1,};toItem: 建立约束关系的对象
attribute: 约束种类
multiplier:倍数
constant:常量
约束公式: 被约束对象.约束attribute = (关系对象.约束attribute) * 倍数multiplier + 常量constant;
详细属性关系,使用例子下章说吧。。。因为我自己还没搞懂
补充iOS8以后新版约束方法
NSLayoutConstraint *centerX = [NSLayoutConstraint constraintWithItem:centerView attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1.0 constant:0]; centerX.active = YES;
3 0
- iOS修行---Auto Layout学习1
- iOS Auto Layout学习
- iOS Auto Layout 1
- IOS Auto Layout学习,struts and springs
- iOS Auto Layout
- iOS Auto Layout
- iOS Auto Layout
- IOS Auto Layout 初识
- Auto Layout iOS
- ios-Auto Layout
- iOS Auto Layout
- IOS--Auto Layout
- iOS Auto Layout 2
- Beginning Auto Layout Tutorial in iOS 7: Part 1 -- ios7 中的 Auto Layout 使用教程 第一节
- iOS Auto Layout的使用
- iOS Auto Layout的使用
- iOS Auto Layout的使用
- iOS Auto Layout的使用
- vc编写自己的动态链接库
- python nose测试框架全面介绍四
- android的AIDL的一点心得
- echarts tooltip trigger: 'axis'没有作用
- 适配器模式(Adapter Pattern)- 最易懂的设计模式解析
- iOS修行---Auto Layout学习1
- ajax提交json数据并使用Springmvc接收实例
- ORA-15025: could not open disk "/dev/asm***"
- 搭建SSH三大框架WEB项目过程(Struts2.3+Hibernate4.3+Spring4.1)
- PAT A1073. Scientific Notation (20)
- Dagger2
- ruby on rails 常用的记录
- db2中关于递归(with)的使用
- 缓存图片解决方案(来自stackoverflow)