关于IOS的Autolayout代码编写使用
2014-11-16 21:49
344 查看
- (void)viewDidLoad
{
UIButton *btn1=[UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn1 setTitle:@"Click Me" forState:UIControlStateNormal];
[btn1 setTranslatesAutoresizingMaskIntoConstraints:NO];//标记是否自动布局
[self.view addSubview:btn1];
UIButton *btn2=[UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn2 setTitle:@"Click Me Please" forState:UIControlStateNormal];
[btn2 setTranslatesAutoresizingMaskIntoConstraints:NO];//标记是否自动布局
[self.view addSubview:btn2];
NSDictionary *views=NSDictionaryOfVariableBindings(btn1,btn2);
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-(==50)-[btn1(100)]"
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(==50)-[btn1(30)]"
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"H:[btn2(==150)]" </span><span style="font-family: 'Comic Sans MS'; "><span style="font-size:12px;">//H=Horizontal,水平方向,同时设定控件宽度</span></span><span
style="font-size:14px;">
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=200)-[btn2(==btn1)]" //V=Vertical,垂直方向,同时设定控件高度
options:0
metrics:nil
views:views] ];
//注意AddConstraints和AddConstraint之间的区别,一个添加的参数是(NSArray *),一个是(NSLayoutConstraint *)
[self.view addConstraint:
[NSLayoutConstraint constraintWithItem:btn2
attribute:NSLayoutAttributeLeft
relatedBy:NSLayoutRelationEqual
toItem:btn1
attribute:NSLayoutAttributeRight
multiplier:1
constant:10]];
[self.view addConstraint:
[NSLayoutConstraint constraintWithItem:btn2
attribute:NSLayoutAttributeTop //要设定的属性
relatedBy:NSLayoutRelationGreaterThanOrEqual //大于还是小于相对的View的值
toItem:btn1 //相对于某个View或者控件
attribute:NSLayoutAttributeTop //指定要设定的关联View的属性
multiplier:1 //因子值
constant:0]];
[super viewDidLoad];
// Do any additional setup after loading the view, typically
from a nib.
}
转载自:http://blog.csdn.net/mobilecode/article/details/8842379
{
UIButton *btn1=[UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn1 setTitle:@"Click Me" forState:UIControlStateNormal];
[btn1 setTranslatesAutoresizingMaskIntoConstraints:NO];//标记是否自动布局
[self.view addSubview:btn1];
UIButton *btn2=[UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn2 setTitle:@"Click Me Please" forState:UIControlStateNormal];
[btn2 setTranslatesAutoresizingMaskIntoConstraints:NO];//标记是否自动布局
[self.view addSubview:btn2];
NSDictionary *views=NSDictionaryOfVariableBindings(btn1,btn2);
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-(==50)-[btn1(100)]"
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(==50)-[btn1(30)]"
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"H:[btn2(==150)]" </span><span style="font-family: 'Comic Sans MS'; "><span style="font-size:12px;">//H=Horizontal,水平方向,同时设定控件宽度</span></span><span
style="font-size:14px;">
options:0
metrics:nil
views:views]];
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=200)-[btn2(==btn1)]" //V=Vertical,垂直方向,同时设定控件高度
options:0
metrics:nil
views:views] ];
//注意AddConstraints和AddConstraint之间的区别,一个添加的参数是(NSArray *),一个是(NSLayoutConstraint *)
[self.view addConstraint:
[NSLayoutConstraint constraintWithItem:btn2
attribute:NSLayoutAttributeLeft
relatedBy:NSLayoutRelationEqual
toItem:btn1
attribute:NSLayoutAttributeRight
multiplier:1
constant:10]];
[self.view addConstraint:
[NSLayoutConstraint constraintWithItem:btn2
attribute:NSLayoutAttributeTop //要设定的属性
relatedBy:NSLayoutRelationGreaterThanOrEqual //大于还是小于相对的View的值
toItem:btn1 //相对于某个View或者控件
attribute:NSLayoutAttributeTop //指定要设定的关联View的属性
multiplier:1 //因子值
constant:0]];
[super viewDidLoad];
// Do any additional setup after loading the view, typically
from a nib.
}
转载自:http://blog.csdn.net/mobilecode/article/details/8842379
相关文章推荐
- 关于IOS的Autolayout代码编写使用
- 通过 Masonry使用纯代码方式编写 Auto Layout--配置 Masonry
- 关于IOS的Autolayout特性的理解以及使用
- iOS之使用代码实现autolayout(一)
- iOS 8 Auto Layout界面自动布局系列3-使用代码添加布局约束
- 通过 Masonry使用纯代码方式编写 Auto Layout--配置 Masonry
- 关于IOS的Autolayout特性的理解以及使用
- iOS之使用代码实现autolayout(二)
- 关于IOS的Autolayout特性的理解以及使用
- Masonry — 使用纯代码进行iOS应用的autolayout自适应布局
- 关于IOS的Autolayout特性的理解以及使用
- Masonry -- 使用纯代码进行iOS应用的autolayout自适应布局
- iOS关于autolayout的使用
- iOS 8 Auto Layout界面自动布局系列3-使用代码添加布局约束
- iOS 8 Auto Layout界面自动布局系列3-使用代码添加布局约束
- IOS autoLayout之使用VFL语言进行代码自动布局
- iOS开发笔记--使用Auto Layout中的VFL(Visual format language)--代码实现自动布局
- 关于IOS的Autolayout特性的理解以及使用
- IOS手动添加的View 在代码中使用(自动布局)autoLayout
- iOS: 在代码中使用Autolayout