美文网首页在项目中踩过的坑
AutoLayout中的Hugging和Compression优

AutoLayout中的Hugging和Compression优

作者: 子达如何 | 来源:发表于2016-04-15 00:14 被阅读71次

    除了一般的约束关系和约束的优先级之外,对于那些根据内容拥有自身大小的View(例如UIImageView,UIButton,UILabel),还可以通过控制这两个优先级。

    • setContentCompressionResistancePriority:forAxis:
      Sets the priority with which a view resists being made smaller than its intrinsic size.

    意思就是限制视图小于它的内在大小。

    • setContentHuggingPriority:forAxis:
      Returns the priority with which a view resists being made larger than its intrinsic size.

    这个的意思是限制视图大于它的内在大小。

    intrinsic size可以理解为View的内容的大小,比如UILabel就是它的字符串占用的空间大小。UIImageView就是它的image的size。

    Content Compression Resistance = 不许挤我!
    对,这个属性说白了就是“不许挤我”,这个属性的优先级(Priority)越高,越不“容易”被压缩。
    也就是说,当整体的空间装不下所有的View的时候,Content Compression Resistance优先级越高的,显示的内容越完整。

    Content Hugging = 抱紧!
    这个属性的优先级越高,整个View就要越“抱紧”View里面的内容。也就是View的大小不会随着父级View的扩大而扩大。

    相关文章

      网友评论

      • 挖掘机:可以用masonry呀
        子达如何:@挖掘机 没有发现masonry怎么设置这两个参数,另外实现这个效果不知道只用位置和约束如何实现,求指导

      本文标题:AutoLayout中的Hugging和Compression优

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