文档章节

xib constraints edge

夕阳_jhe
 夕阳_jhe
发布于 2015/10/21 15:59
字数 718
阅读 31
收藏 0
  1. 第一个图标,是两个或多个view   的 constraints  

    1)第一部分4个分别是,前对齐,后对齐,上对齐,下对齐(注意看前面的图标指示)

    2)第二部分3个分别是,表示两个或多个坚直对齐(如图标示),第二个表示水平居中对齐,第三个不知道,大概是基线

    3)第三部分2个分别是,in Container 在父view中,你选一个view勾上这个,表示它会以父view为基准,竖直对齐,第二个同理

  2.  第二个图标,是单个view   

       1)第一部分,是view本身,上下左右,相对于最近的view的间距,  下面的constrain to margins 勾不勾上是一样的,勾上会减去默认的8个点,如果确定要用设定的值,就点中间的 红色虚线 “工”  ,变成实线“工”就表示运用了

       2)第二部分,是view本身,的高宽比,设定高宽?

       3)第三部分,是两个view 等宽,等高 一起变化,aspect ratio 不知道没用

  3.  每三个图标,是更新

      1)上部分,是选中的view   

      update frames 在设好constrainst 的情况下,根据设好的constraints列新frme

      update constrainst  与上相反

      add missing constraints 是有时候你设置了一半的constraints时可以用这个增加余下的,但有时会出现乱七八糟的东东

      reset to  suggested constraints  不知道,也会加乱七八糟的

      clear constraints 清除所有的constraints

      2)下部分,是所有的view

 

 

在UIButton中有三个对EdgeInsets的设置:ContentEdgeInsets、titleEdgeInsets、imageEdgeInsets

        //使图文 上下居中

        tfRightBtn.titleLabel?.font = UIFont.systemFontOfSize(11)

        let image = UIImage(named: "筛选")

        tfRightBtn.setImage(image, forState: UIControlState.Normal)

        //计算size

        var size = CGRect();

        let size2 = CGSize();

        let string = "筛选";

        size = string.boundingRectWithSize(size2, options: NSStringDrawingOptions.UsesFontLeading, attributes: [NSFontAttributeName: UIFont.systemFontOfSize(11)], context: nil);

        tfRightBtn.imageEdgeInsets = UIEdgeInsetsMake(1, 10, 15, -size.width)

        

        tfRightBtn.setTitle("筛选", forState: UIControlState.Normal)

        tfRightBtn.setTitleColor(UIColor.grayColor(), forState: UIControlState.Normal)

        tfRightBtn.titleEdgeInsets = UIEdgeInsetsMake(15, 10 - image!.size.width, 0, 0)

        tfRightBtn.titleLabel?.textAlignment = NSTextAlignment.Center;//设置title的字体居中

 

  1. 图片缩进  (edge 有  content  title  image 可选 ) content 表示图片和文字一起移动

button 设置时遇到的问题,  发现一个图片加到button上时被压缩的好小,原因是这里设置了缩进(edge 选 image)

这样可以做那种按钮很大,容易点,但中间的图片看起来又不大的效果

如果要定制图片  文字   frame ,  就两个都要改,先选image,再选title

用代码写,会覆盖XIB

2. 设置relation

relation     有equal   =    less than or equal    <=        greater than equal

 

priority -- 优先级。这个可以调。有时有冲突,调低一点就没有红色 冲突了。   如果调成250,则那个约束的名字后面会加个@250

 

 

 

constraint    可以连线拉出来做一个变量,比如 

    @IBOutlet weak var likeButtonWidth: NSLayoutConstraint!

这样就可动态改变,同时可用来改变与之相关的一变量的布局

 

 

xib   file's owner---------custom class     与那个类对应在这里改

© 著作权归作者所有

共有 人打赏支持
夕阳_jhe
粉丝 2
博文 54
码字总数 15591
作品 0
深圳
更加优雅的iOS自动布局

因为懒,所以之前几乎不用代码进行自动布局。但是使用xib和storyboard,总是有那么一些局限性。使用代码布局在某些时候就成了必须了😂 。 iOS原生的布局方式太过麻烦。要么使用VFL(Visual ...

彩虹的洪
2017/12/18
0
0
iOS开发技巧 autolayout自动布局

iOS开发技巧(系列十五:autolayout自动布局) 发表于3个月前(2014-06-14 13:59) 阅读(121) | 评论(1) 6人收藏此文章, 我要收藏 赞0 摘要 autolayout可以方便的进行屏幕适配 ios autola...

Daniel_s
2015/12/07
69
0
UITableViewCell中设置动态大小的圆形imageview

在一个自定义的UITableViewCell里有一个imageview需要显示成圆形,因为它的宽高是autolayout动态设置的,所以不能在xib中设置layer.cornerRadius。于是我就在awakeFromNib中设置layer.corne...

yoyoso
2015/04/26
0
0
取消新增的constraints

升级为xcode 4.5后想取消 constraints 选中 XIB 文件,然后在 File Inspector 中,取消勾选 “Use Autolayout” 就可以继续使用 Auto Resizing mask 了。...

abcMx
2013/02/01
0
0
IOS8 SizeClass初探

以前和安卓的同学聊天的时候,谈到适配一直是一个非常开心的话题,看到他们被各种屏幕适配折磨的欲仙欲死,心里真替他们高兴。不过在做到 iPhone 和 iPad 的适配的时候,一个页面需要配置多个...

泊竹
2014/09/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

初级开发-编程题

` public static void main(String[] args) { System.out.println(changeStrToUpperCase("user_name_abc")); System.out.println(changeStrToLowerCase(changeStrToUpperCase("user_name_abc......

小池仔
今天
4
0
现场看路演了!

HiBlock
昨天
12
0
Rabbit MQ基本概念介绍

RabbitMQ介绍 • RabbitMQ是一个消息中间件,是一个很好用的消息队列框架。 • ConnectionFactory、Connection、Channel都是RabbitMQ对外提供的API中最基本的对象。Connection是RabbitMQ的s...

寰宇01
昨天
9
0
官方精简版Windows10:微软自己都看不过去了

微软宣布,该公司正在寻求解决方案,以减轻企业客户的Windows 10规模。该公司声称,企业客户下载整个Windows 10文件以更新设备既费钱又费时。 微软宣布,该公司正在寻求解决方案,以减轻企业...

linux-tao
昨天
15
0
TypeScript基础入门之JSX(二)

转发 TypeScript基础入门之JSX(二) 属性类型检查 键入检查属性的第一步是确定元素属性类型。 内在元素和基于价值的元素之间略有不同。 对于内部元素,它是JSX.IntrinsicElements上的属性类型...

durban
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部