- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
具有 UIViewAutoresizing
Height+Top 或 Height+Bottom 的 UIView
的自动调整大小行为是什么?这有道理吗?边距之一或 View 本身是否优先?我刚刚发现我不小心将 View 的 UIViewAutoresizing
设置为 UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleTopMargin
,这导致 View 在其父级调整大小时调整到 0
高度。
最佳答案
这就是自动调整大小的工作原理:
假设父 View 的高度为 400,而您的 View 设置为 y = 100,高度 = 200
这意味着,您的 View 上方有 100 像素,您的 View 有 200 像素,您的 View 下方有 100 像素。
有了flexibleHeight和flexibleTop,就意味着当父view frame发生变化时,会保持底部100像素不变,剩余部分在top margin和height之间按比例平分
因此,如果您从父级的 400 高度变为 300 高度,这意味着它将使用 100 作为底部边距并按比例分割剩余的 200,留下您的 y = 66.666 和高度 = 133.333
如果你从 400 高度到 100 高度,它仍然会使用那 100 作为底部边距,为顶部边距和高度留下 0 空间,留下你的 y = 0,高度 = 0
关于ios - UIViewAutoresizing flexible Height+Top 或 Height+Bottom 何时有意义?它有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12185901/
我已将我的项目从 Swift 2.3 更新到 Swift 3。Swift 编译器警告显示“'UIViewAutoresizing' 类型的表达式未使用” self.autorisizinMask =
简短介绍一下我想用它实现的目标: 我有一个自定义的UIView,我想让箭头可见,例如在底部和左侧。我认为可以采用与 UIViewAutoresizing 相同的方式执行此操作。 所以我为我的自定义 V
我正在创建一个具有重要旋转行为的 View Controller 。我无法找到一种方法来让我的所有转换都发生在只有 UIViewAutoresizing 的情况下(我正在做一些事情,比如在旋转按钮时让
在 Swift 2.0 中出现这个错误。 Binary operator '|' cannot be applied to two UIViewAutoresizing operands 代码如下:
具有 UIViewAutoresizing Height+Top 或 Height+Bottom 的 UIView 的自动调整大小行为是什么?这有道理吗?边距之一或 View 本身是否优先?我刚刚发现
我是一名优秀的程序员,十分优秀!