Cocoa Autolayout:content hugging 和 content compression resistance priority的区别

总思路

Cocoa Autolayout:content hugging 和 content compression resistance priority的区别

概念简介:

  • Hugging => 内容不想增加。Content Hugging Priority即内容压缩优先级。
  • Compression Resistance => 内容不想缩小。Content Compression Resistance Priority 称为内容抗压缩优先级

举例如下:

假设你已经得到一个按钮如下:

[       Click Me      ]

你已经把边缘固定到优先级为500的更大的父视图上了。

然后,如果内容压缩优先级值 > 500,它将显示如下:

[Click Me]

如果内容压缩优先级值<500,它将显示如下:

[       Click Me      ]

如果父视图现在缩小,假设内容抗压缩优先级值> 500,它会显示成这样:

[Click Me]

否则,如果内容抗压缩优先级值<500,它会显示成这样:

[Cli..]

如果它不像这样工作,那么可能是受到了其他一些限制,这些限制会妨碍上述约束良好工作,请检查!

你可以把它固定在优先级为1000的父视图上。或者你可以有宽度优先级。如果是这样,这步操作可能会有帮助:

Editor > Size to Fit Content

其他资料

可参考视频tutorial about Autolayout中介绍,该视频很详细,核心内容如下:

Cocoa Autolayout:content hugging 和 content compression resistance priority的区别

参考文献

Cocoa Autolayout: content hugging vs content compression resistance priority