美文网首页
压缩阻力和内容吸附

压缩阻力和内容吸附

作者: 小冰山口 | 来源:发表于2019-11-06 17:45 被阅读0次

本人有若干成套学习视频, 可试看! 可试看! 可试看, 重要的事情说三遍 包含Java, 数据结构与算法, iOS, 安卓, python, flutter等等, 如有需要, 联系微信tsaievan.

(一) 压缩阻力

压缩阻力是指一个视图保护其内容完整性的能力

压缩阻力越大, 该视图保护其内容完整性的能力就越强, 内容越不容易被压缩或裁剪, 反之, 该视图保护其内容完整性的能力就越弱, 内容就越容易被压缩或裁剪.

系统用约束优先级的高低来表示视图压缩阻力的大小, 约束优先级越高, 也就是NSLayoutConstraints类实例的priority属性值越大, 视图的压缩阻力越大, 反之, 视图的压缩阻力越小.

image.png

视图要保证内容的完整性, 就是要保证内容的尺寸不要被轻易压缩.

image.png
如上图所示, 默认的content compression resistance priority750, 所以默认的label的完整性是会被压缩的. 但是如果只是改到1000, 也不会比其他的约束优先级大, 因为都是1000, 所以还是会被压缩.

如果想不被压缩, 只能是牺牲某一个约束, 如下图所示, 将两个label间距的优先级改为750, 此时约束的线变成了蓝色的虚线, 这时候间距会被压缩, label就可以完整地显示出来了

image.png
(二) 内容吸附

内容吸附是指一个视图保持它的尺寸与其内容尺寸相匹配的能力, 内容吸附能力越强, 该视图保持它的尺寸与其内容尺寸相匹配的能力越强, 反之, 该视图保持它的尺寸与其内容尺寸相匹配的能力就越弱.

系统用约束的优先级的高低来表示内容吸附的能力的强弱, 约束优先级越高, 也就是NSLayoutConstraints类实例的priority属性值越大, 视图的吸附能力越强, 反之, 视图的吸附能力越弱.

image.png

由下图可以看到, 当content hugging priority越大, 一个视图保持它的尺寸与其内容尺寸相匹配的能力就越强.

image.png

相关文章

网友评论

      本文标题:压缩阻力和内容吸附

      本文链接:https://www.haomeiwen.com/subject/locbmctx.html