Xcode 界面生成器。这些自动调整大小的蒙版设置有何不同?

标签 xcode ios5 interface-builder autosize

我现在很习惯在 IB 中使用自动调整大小的掩码,但有两个自动调整大小设置我不清楚它们的不同之处:

设置 1
Autosizing with both upper and lower anchors http://dl.dropbox.com/u/11270323/stackoverflow/autosize-mask-0.png

设置 2
Autosizing with only uppper anchor http://dl.dropbox.com/u/11270323/stackoverflow/autosize-mask-1.png

一些上下文。使用这些设置的 UIView 子类是子 subview 。设置 1 为我提供了我想要的行为 - subview 与其父 View 扩展/收缩 - 而设置 2 以一种不明显的方式略有不同。

这两种设置之间的预期布局差异是什么?

谢谢,
道格

最佳答案

设置一:
View 将垂直调整大小,以便保留与父 View 顶部的距离和与父 View 底部的距离。基本上, View 会随着 super View 而增长和缩小;如果 super View 变得高 30 像素,那么这个 View 也会如此。

设置二:
View 将垂直调整大小,以便保留与父 View 顶部的距离,并保留 View 的比例高度。基本上, View 将与 super View 成比例增长;如果 superview 变高 10%,这个 view 也会变高 10%。

请注意这些在实践中有何不同。假设 superview 是 100px 高,subview 是 60px 高,顶部和底部有 20px 的缓冲区。现在让我们将 superview 的大小调整为 150px 高。

  • 设置 1 : subview 增长以保留 20px 的边距,变为 110px 高。
  • 设置 2 : subview 增长 50% (60px -> 90px)。上边距仍然是 20px,但下边距现在是 40px。

  • 一般来说,您通常希望设置 1 中的行为。如果您有一个主/详细 View 拆分顶部/底部,并且您希望这两个部分与 super View 成比例增长,则可以使用设置 2。在这种情况下,您将为两个 View 提供灵活的高度,固定顶 View 的上边距和底 View 的底边距。

    关于Xcode 界面生成器。这些自动调整大小的蒙版设置有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9828425/

    相关文章:

    ios - 在 UITableView 上方添加一个仅在 TableView 向上滚动时显示的隐藏 View

    iphone - 在横向模式下使用 Interface Builder 进行编程

    ios - UINavigationBar 和 UISearchBar 之间的小差距

    objective-c - 如何使用界面生成器更改 iPad 的文本字段高度?

    ios - Swift:如何在详细 View Controller 上添加向上和向下按钮和功能?

    ios - iOS 4.3.3 上的 GKNotificationBanner

    ios - 无法构建到 iPhone Swift Tesseract ocr

    ipad - 是否可以取消 NKAssetDownload?

    xcode - 当用户在 Swift 中输入 2 个字符时将焦点设置在下一个文本字段上

    ios - 更新到 Xcode 13,尝试在 iOS 但不是 macOS 上运行 SwiftUI 应用程序时获得唯一的错误代码