今天在为自己的view添加约束 对比以前添加的约束时,发现有有两层淡红色线框一条实线和一条虚线,而以前一个demo中添加的则只有一个蓝色实线框。

今天添加的约束如图1所示:

 图1

而以前添加约束如图2所示:

图2

后来按第一种约束在同级View下添加一个按钮后,发现按钮会漏出一部分

=> 

如果是按第二种方式约束, 则不会出现这种问题

  =>    

这是为什么呢?

原来是margin属性在作怪。margin属性是代表与周边元素的距离,与padding属性表示元素内的内容与自己边界的距离 相对。如下图所示[1]:

在添加pin约束时,默认是勾选了"Constrain to margins"选项,这样添加的约束会自动使用默认的margin约束

所以在添加pin约束的时候,发现存在间隙,而“漏出了”一部分希望被遮挡的内容的时候,一定要小心注意这个问题。

参考

[1] http://blog.163.com/email_wangyong/blog/static/126152455200972431013536/

IOS pin约束问题 存在间隙的更多相关文章

  1. ios布局约束

    http://blog.csdn.net/pucker/article/details/41843511 除了使用Pin菜单之外,也可以直接在文档结构窗口中或者设计器中通过拖拽建立约束.在文档结构窗口 ...

  2. iOS Storyboard约束详解

    链接:http://www.jianshu.com/p/b88c65ffc3eb 约束,就是指--此处略去1万字--都懂的,就不说了.直接进入实战环节. 本文的控件约束都是围绕着UITableView ...

  3. ios xib约束适配要点

    基本上以下几点就能解决除横屏以外的适配问题 1.页边距约束 (Leading and Trailing space) 页边间距约束分前部间距约束(Leading space constaint)和尾部 ...

  4. ios 更新约束

    [view setNeedsUpdateConstraints];    [view updateConstraintsIfNeeded];    [view setNeedsLayout];    ...

  5. iOS开发者学习Flutter

    Flutter for iOS 开发者 本文档适用那些希望将现有 iOS 经验应用于 Flutter 的开发者.如果你拥有 iOS 开发基础,那么你可以使用这篇文档开始学习 Flutter 的开发. ...

  6. 最近读cocoaui源代码有感

    上半年为了做一个ios的应用,引入了cocoaui库,主要是用来布局ios界面,发现简化了不少代码和工作量.因为在写第一个ios应用的时候,用的代码布局,在适配4s和6的机型时候,几乎被搞死,大量的约 ...

  7. 第三章 VIVADO 自定义IP 流水灯实验

    第二章里面已经说过了,MIZ701 PL部分没有输入时钟,因此驱动PL资源必须是通过PS来提供时钟,所以这个流水灯实验也得建立一个最小系统了,然后再添加一个流水灯的自定义IP. 3.0本章难度系数★★ ...

  8. iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

    http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生 ...

  9. 【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

    原文网址:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式 ...

随机推荐

  1. Spring Boot JPA 使用教程

    JPA 是 Spring Boot 官方推荐的数据库访问组件,其充分体现了面向对象编程思想,有点像 asp.net 的 EFCore.JPA 也是众多 ORM 的抽象. 从本系列开始,都需要用到 my ...

  2. 说明与比较:new Vue() 和 export default {}

    在生成.导出.导入.使用 Vue 组件的时候,像我这种新手就会常常被位于不同文件的 new Vue() 和 export default{}.它们含义到底是什么,又有什么异同呢? 首先,Vue 是什么 ...

  3. 使用Vue时localhost:8080中localhost换成ip地址后无法显示页面的问题

    解决办法是:在package.json中 然后重新启动服务器 npm run dev 就正常显示了.

  4. 吴裕雄--天生自然TensorFlow2教程:函数优化实战

    import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D def himme ...

  5. java中关于类和对象的一些思考

    就这个问题而言 第一种和第二种定义的变量并不是一种形式 前者我们称为原始数据变量 后者我们称为对象变量 这两种变量的创建方式,定义方式,使用方式都有着很多不同 需要引起注意. 在java中,有着基本的 ...

  6. linux 环境下安装 MySQL

    参考: Linux安装MySQL5.7 注意: 安装后 出现 navicat MySQL连接Linux下MySQL的及2003错误  需要看下 虚拟机的防火墙是否关闭!!!

  7. cookie按钮点击倒计时

    <!--引入jquery.cookie.js 插件--> <script src="js/jquery.js" type="text/javascrip ...

  8. ES建立索引步骤, 1,index 2.mapping 3,别名

    1.建立索引PUT /index_trans_detail 2.建立mappingPOST /index_trans_detail/type_trans_detail/_mapping{ " ...

  9. Thread的join方法

    一个线程在执行的过程中,可能调用另一个线程,前者可以称为调用线程,后者成为被调用线程. Thread.Join方法的使用场景:调用线程挂起,等待被调用线程执行完毕后,继续执行. 如下案列: 当NewT ...

  10. 机器学习之SVM多分类

    实验要求数据说明 :数据集data4train.mat是一个2*150的矩阵,代表了150个样本,每个样本具有两维特征,其类标在truelabel.mat文件中,trainning sample 图展 ...