ios - 根据其约束获取 UIView 的最小尺寸

标签 ios objective-c uiview nslayoutconstraint

我已经创建了一个自定义 Nib 并将其添加到我的 View 层次结构中。 View 使用大于或等于的约束分离为 subview ,换句话说,为 View 提供可使用的最小尺寸。

是否可以从约束系统中获取 UIView 的最小尺寸?

最佳答案

UIView 有一个方法 systemLayoutSizeFittingSize: 来返回 View 的最小尺寸(或最大尺寸)。

CGSize smallestViewSize = [view systemLayoutSizeFittingSize: UILayoutFittingCompressedSize];

UIView 方法 intrinsicContentSize 返回最需要的大小。这个尺码可能在之前返回的两个尺码中间有点偏。

在 iOS6 之前,您可以调用 sizeThatFits: 来获得一个合适的尺寸,该尺寸可能小于传入的尺寸,或者默认情况下是接收器的边界。

关于ios - 根据其约束获取 UIView 的最小尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24317549/

相关文章:

android - 使用一个大包还是多个小包更好?

android - React Native 中 iOS 和 Android 的 UI 层是否会发生变化?

objective-c - 当我不需要使用完成 block 时,如何在 swift 中声明 NULL/Void?

ios - 如何使用 MPMoviePlayerController 播放 YouTube 视频?

swift - 如何查找 UIView 在代码中创建的位置 - swift - 以编程方式

ios - 只要 URL 包含日文参数,NSMUtableURLRequest requestWithURL 就会返回 null

ios - 动态增加 UILabel 和 TableView Cell 的高度?

iOS UITableView resize height/cant scroll down 问题

objective-c - UIView clipToBounds 不会阻止 subview 在父 View 之外接收触摸

ios - Swift import 语句失败