文档章节

AutoLayout的代码写法

 泊竹
发布于 2014/04/24 18:36
字数 184
阅读 7335
收藏 6
#import "TestViewController.h"

@interface TestViewController ()

@property (nonatomic, strong) UILabel   *textInfoLabel;
@property (nonatomic, strong) UIView    *backgroundView;

@end

@implementation TestViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.backgroundView = [[UIView alloc] init];
    [self.backgroundView setTranslatesAutoresizingMaskIntoConstraints:NO];
    self.backgroundView.backgroundColor = [UIColor blueColor];
    [self.view addSubview:self.backgroundView];
    
    self.textInfoLabel = [[UILabel alloc] init];
    [self.textInfoLabel setTranslatesAutoresizingMaskIntoConstraints:NO];
    self.textInfoLabel.backgroundColor = [UIColor redColor];
    self.textInfoLabel.numberOfLines = 0;
    self.textInfoLabel.font = [UIFont systemFontOfSize:15];
    self.textInfoLabel.text = @"测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试";
    [self.view addSubview:self.textInfoLabel];

    NSDictionary *views = @{@"backgroundView":self.backgroundView, @"textInfoLabel":self.textInfoLabel};
    NSDictionary *metrics = @{@"LeftStep":@20, @"TopStep":@20, @"Width":@200, @"Height":@"100", @"VStep":@20, @"HStep":@20};
    NSString *vLayoutString = @"V:|-TopStep-[backgroundView(==Width)]-VStep-[textInfoLabel(>=20)]";
    NSArray *vLayoutArray = [NSLayoutConstraint constraintsWithVisualFormat:vLayoutString options:0 metrics:metrics views:views];
    
    NSString *hLayoutstring = @"H:|-LeftStep-[backgroundView(==Height)]-HStep-[textInfoLabel(==100)]";
    NSArray *hLayoutArray = [NSLayoutConstraint constraintsWithVisualFormat:hLayoutstring options:0 metrics:metrics views:views];
    
    [self.view addConstraints:vLayoutArray];
    [self.view addConstraints:hLayoutArray];
}

@end


© 著作权归作者所有

共有 人打赏支持
下一篇: 持续集成
粉丝 90
博文 67
码字总数 13285
作品 0
徐汇
私信 提问
加载中

评论(2)

快乐赤子心
手写好麻烦啊,这乱七八糟的字符串都怎么写的啊?好郁闷
快乐赤子心
棒棒嗒俊神
AutoLayout框架Masonry使用心得

我们组分享会上分享了页面布局的一些写法,中途提到了AutoLayout,会后我决定将很久前挖的一个坑给填起来(还有好多坑就不说了,说了不填更毁形象了)。 可使用的框架首推Masonry,关于为啥选...

北方人在上海
2016/05/25
82
0
iOS界面布局之四——使用第三方库Masonry进行autolayout布局

iOS界面布局之四——使用第三方库Masonry进行autolayout布局 一、引言 在前面博客,我们讨论了使用iOS原生的框架代码来进行autolayout布局。在使用中,我们会发现,无论是代码量还是结构的清...

珲少
2015/11/02
0
5
ios8 iOS Auto Layout

引言: Auto Layout是iOS6发布后引入的一个全新的布局特性,其目的是弥补以往autoresizing在布局方面的不足之处,以及未来面对更多尺寸适配时界面布局可以更好的适应. 要完全掌握Auto Layout是一...

AK_47
2014/10/31
0
0
AutoLayout(III):浅析动画

前面讲过了AutoLayout的基本概念和遇到的一些问题,这篇讲的是AutoLayout下的动画。自动布局已经比传统的Frame复杂,动画也会稍微更复杂些。期望通过这篇文章,能够对AutoLayout下的动画有理...

hejunbinlan
2016/07/29
24
0
哪里写Autolayout布局最合适?

用户需求一览 申请者fengmingxiao 项目大致代码行数500 项目 GitHub 地址 项目备注 探究UI布局方面的代码应该怎么写才是规范的,希望您能够 看看Readme,万分感谢,这不是什么大工程,但是我...

hejunbinlan
2016/07/29
17
0

没有更多内容

加载失败,请刷新页面

加载更多

开源 java CMS - FreeCMS2.8会员我的评论

项目地址:http://www.freeteam.cn/ 我的评论 从左侧管理菜单点击我的评论进入。在这里可以查看当前登录会员的所有评论记录。 删除评论 选择评论然后点击删除按钮可以完成删除操作。 为了防止...

freeteam
28分钟前
1
0
Eureka Server启用 https服务指北

文章共 591字,阅读大约需要 2分钟 ! 概 述 在我的前文《Eureka Server 开启Spring Security Basic认证》中已经给 Eureka Server 开启了最基本的鉴权措施,本文则让 HTTPS加持于 Eureka Ser...

CodeSheep
今天
17
0
OSChina 周二乱弹 —— 其实我在地板也睡不着

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @witt-z :分享歌词: 阴天 在不开灯的房间,当所有思绪都一点一点沉淀。 分享莫文蔚的单曲《阴天》: 《阴天》- 莫文蔚 手机党少年们想听歌,...

小小编辑
今天
714
12
微服务分布式事务实现

https://www.processon.com/view/link/5b2144d7e4b001a14d3d2d30

WALK_MAN
今天
5
0
《大漠烟尘》读书笔记及读后感文章3700字

《大漠烟尘》读书笔记及读后感文章3700字: 在这个浮躁的社会里,你有多久没有好好读完一本书了? 我们总觉得自己和别人不一样,所以当看到别人身上的问题时,很少有“反求诸己”,反思自己。...

原创小博客
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部