IOS(UI)_AutoLayout(自动布局)_01
来源:互联网 发布:淘宝开店手机咋开不了 编辑:程序博客网 时间:2024/06/04 20:14
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; /* AutoLayout由来 ios6之后出现的一种新的布局方式,拥有取代原先的AutoLayout系统的布局方式AutoLayout是指定视图和父视图 或者 视图和兄弟视图的关系来布局 在AutonLayout当中,我们使用约束来描述视图与视图之间的关系 OC专门为开发者封装了一个类 NSLayoutConstraint来帮助开发者描述布局 *///[NSLayoutConstraint constraintWithItem:<#(nonnull id)#>// attribute:<#(NSLayoutAttribute)#>// relatedBy:<#(NSLayoutRelation)#>// toItem:<#(nullable id)#>// attribute:<#(NSLayoutAttribute)#>// multiplier:<#(CGFloat)#>// constant:<#(CGFloat)#>]; /* 参数的意思: item:约束中两个视图对象 attribute:描述视图的对齐特征 relatredBy:描述两个视图attribute关系 multiplier:缩放比例 constant:偏移量 视图1.属性 关系 视图2.属性*缩放比例+偏移量 视图1.左边==视图2.左边 * 1 + 0 [NSLayoutConstraint constraintWithItem:视图1 attribute:左边 relatedBy:等于 toItem:视图2 attribute:左边 multiplier:1 constant:0]; 视图1.宽度==100 [NSLayoutConstraint constraintWithItem:视图1 attribute:宽度 relatedBy:等于 toItem:nil attribute:宽度 multiplier:1 constant:100]; */ UIView *view1=[UIView new]; view1.backgroundColor=[UIColor redColor]; //启动autoLayout布局 view1.translatesAutoresizingMaskIntoConstraints=NO; [self.view addSubview:view1]; NSLayoutConstraint *constraint1=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1 constant:0]; [self.view addConstraint:constraint1]; NSLayoutConstraint *constraint2=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterY multiplier:1 constant:0]; [self.view addConstraint:constraint2]; //大小 NSLayoutConstraint *constraint3=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeWidth multiplier:1 constant:100]; [self.view addConstraint:constraint3]; NSLayoutConstraint *constraint4=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeHeight multiplier:1 constant:100]; [self.view addConstraint:constraint4]; UIView *view2=[UIView new]; view2.backgroundColor=[UIColor yellowColor]; //启动autoLayout布局 view2.translatesAutoresizingMaskIntoConstraints=NO; [self.view addSubview:view2]; NSLayoutConstraint *constraint1_view2=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:view2 attribute:NSLayoutAttributeLeft multiplier:1 constant:0]; [self.view addConstraint:constraint1_view2]; NSLayoutConstraint *constraint2_view2=[NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:view2 attribute:NSLayoutAttributeTop multiplier:1 constant:0]; [self.view addConstraint:constraint2_view2]; //大小 NSLayoutConstraint *constraint3_view2=[NSLayoutConstraint constraintWithItem:view2 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeWidth multiplier:1 constant:50]; [self.view addConstraint:constraint3_view2]; NSLayoutConstraint *constraint4_view2=[NSLayoutConstraint constraintWithItem:view2 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeHeight multiplier:1 constant:100]; [self.view addConstraint:constraint4_view2]; }- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end
0 0
- IOS(UI)_AutoLayout(自动布局)_01
- IOS(UI)_AutoLayout(自动布局)
- IOS(UI)_AutoLayout(自动布局)01
- UI自动布局
- 【IOS】基本UI布局
- UI AutoLayer 自动布局-->约束
- iOS 新特性分列式 之 iOS 6.x - 主要内容:自动布局、集合视图、UI 状态保持
- iOS 6 自动布局
- IOS 6 自动布局
- 关于iOS自动布局
- ios 自动布局
- IOS自动布局
- 关于iOS自动布局
- ios Autolayout自动布局
- iOS 自动布局 layoutConstraint
- iOS 自动布局教程
- iOS自动布局
- IOS自动布局
- iOS APP提交上架最新流程
- [JAVA修炼之路三]-JAVA Thread 方法
- VS安装问题: Microsoft.Data.Entity.Design.Package.MicrosoftDataEntityDesignPackage
- 如何修改mac 下主机名、电脑名、局域网主机名、计算机名、用户名,以及xcode 工程中的作者名字
- 计算Haar特征个数
- IOS(UI)_AutoLayout(自动布局)_01
- vim头文件的跳转
- 2015年底总结
- Selected SVN connector library is not available or cannot be loaded
- 更安全的HTTPS
- 在没有安装OpenCV的电脑运行OpenCV程序
- android 自动拨打含“#”如:*1234#的电话
- 关于ssh设置免口令登录
- Intellij IDEA远程debug