- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
是否可以根据 intrinsicContentSize
动态计算宽高比来应用此类自动布局约束?在文档中,我发现只有固定比率值的约束。
intrinsicContentSize
的实际高度在我的用例中并不重要,我想保留动态变化的 View 的高度和宽度比例。
我应该提供我自己的约束实现吗?或者有更好的方法吗?
最佳答案
intrinsicContentSize
不可用作约束的输入。 (从逻辑上讲,存在实现 intrinsicContentSize
和相关的内容拥抱和抗压缩优先级的约束,但这是不同的。)
如果您想要这样的宽高比约束,则必须自己添加。在给定时刻查询 intrinsicContentSize
很容易,验证它是否为两个维度提供真实值(不是 NSViewNoInstrinsicMetric
),计算纵横比,然后将其用作将项目的宽度与其高度相关联的约束中的乘数。
困难的部分是知道 intrinsicContentSize
何时失效,以便您可以删除旧的纵横比约束并添加新的。您可以通过覆盖 -invalidateIntrinsicContentSize
作为 View 的子类来执行此操作。 (一定要调用 super !)但是,我不知道从 Controller 或 super View 中可以做到这一点。
关于ios - 基于 `intrinsicContentSize` 的自动布局纵横比(不恒定),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29940000/
我有一张 table 。我希望它的数据垂直和水平居中。 我使用了 align="center"valign="middle" ,但它没有用。
我是一名优秀的程序员,十分优秀!