【问题标题】:How to write content hugging priority of intrinsic size in visual language format?如何以视觉语言格式编写具有内在大小优先级的内容?
【发布时间】:2015-02-04 02:52:48
【问题描述】:

我正在尝试使用 Autolayout 并排放置两个标签 - 左侧标签是字段名称,而右侧标签是值。我正在以可视语言格式编写约束。

但是,我不希望左侧标签超出其固有宽度,并且我希望右侧标签填充屏幕中的剩余宽度。我知道我只需要在左侧标签的固有宽度上分配更高的内容拥抱优先级,但是如何在 VLF 中编写固有宽度?

我希望我的 VLF 字符串看起来像这样:

H:|-20-[leftLabel(==intrinsicContentWidthGoesHere@1000)]-20-[rightLabel]-20-|

【问题讨论】:

    标签: ios objective-c cocoa-touch swift autolayout


    【解决方案1】:

    你做不到。有很多的事情是视觉格式语法无法做到的;这只是其中之一。视觉格式语法适用于它的好处,但它只能执行约束能够执行的最常用设置的一小部分。再举一个例子,你不能用它来设置中心约束。

    将视觉格式语法约束与单个约束或其他约束命令混合和匹配没有任何问题。在您的情况下,只需向视图发送setContentCompressionResistancePriority:forAxis: 命令或setContentHuggingPriority:forAxis: 命令,然后继续。

    【讨论】:

    • 谢谢,这是个不幸的消息。 :( 我求助于 [leftLabel setContentHuggingPriority:forAxis]
    猜你喜欢
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 2021-08-28
    相关资源
    最近更新 更多