【发布时间】:2015-03-09 20:12:09
【问题描述】:
我在故事板的 VC 中添加了一个高度为 2px 的 UIView。如果没有自动布局,它会在模拟器中完全显示为故事板。但是如果我使用自动布局,那么这个子视图会出现高度异常,如 50px-60px 高度。为什么?
【问题讨论】:
标签: ios objective-c iphone storyboard autolayout
我在故事板的 VC 中添加了一个高度为 2px 的 UIView。如果没有自动布局,它会在模拟器中完全显示为故事板。但是如果我使用自动布局,那么这个子视图会出现高度异常,如 50px-60px 高度。为什么?
【问题讨论】:
标签: ios objective-c iphone storyboard autolayout
这是因为自动布局。该视图有 4 个约束。超级视图的尾随空间和超级视图的前导空间是视图的两侧。
底部空间和顶部空间正如您所猜测的底部和顶部,并且由于模拟器的大小与您的故事板视图不同,它会调整视图的高度以适应这些约束,并且距离顶部 46 和底部 439。
如果你想让你的视图高度保持在 2px,你需要做的是设置高度约束而不是底部布局约束。
【讨论】:
您必须向该 UIView 添加以下 4 个约束,
Leading Space to Container -> Main UIView
Trailing Space to Container -> Main UIView
Top Space to Container -> Main UIView
UIView Height Container 2px
【讨论】: