ios - 在堆栈 View 中定义 View 的宽度?

标签 ios swift autolayout uistackview

我想在堆栈 View 的帮助下创建类似设计的图形。我在堆栈 View 中水平添加了 5 个 View 。现在我想做的是给单个 View 一些高度 sat 25 并使堆栈 View 的属性相等宽度,但不知何故我做不到。我不得不给 stakview 提供前导和尾随,并根据前导和尾随内部 View 宽度进行计算。但是因为前导和尾随对于所有设备都是静态的。我试图让堆栈 View 水平和垂直居中,但这没有用。

这是我的约束

enter image description here

enter image description here

为什么我必须给出前导和尾随以计算堆栈 View 内的内部 View 宽度。

为什么我不能对堆栈 View 使用垂直和水平居中并让堆栈 View 使用我为单个 View 定义的宽度?

最佳答案

您需要解决 View 的歧义,以便 View 引擎可以准确地确定它需要如何绘制 View 。引擎总是需要知道 View 应该如何水平放置,因为在 iPad 的情况下,其他 subview 必须扩展得太多;因此,如果我们指定前导和尾随,它可以根据需要扩展,或者如果我们希望它们的宽度增加不超过指定的宽度,那么它可以在前导和尾随中留出一些空间并限制扩展。取决于你如何需要它

我向您推荐此图的父级 View 作为等宽和等高(或提供类似 0.95 的乘数)到 super View 的解决方案,以便它可以在所有屏幕尺寸上很好地显示。

花一些时间阅读歧义和冲突。这将帮助您在不经过深思熟虑的情况下获得所需的 View

关于ios - 在堆栈 View 中定义 View 的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47008524/

相关文章:

swift - 全宽 UICollectionViewCells、自动布局约束和旋转问题

ios - 使用 Youtube API v3 时出现 "accessNotConfigured"错误

ios - 安全地执行对 NSMutableArray 的更改

ios - 为什么一个对象不能在 ios 中有一个委托(delegate)列表

ios - 不保存所需的图像方向

ios - 具有自动布局的 UIScrollView 内的动态 UILabel 高度

iOS 7 TableView 在 ViewController 和 NavigationBar 中的模糊效果

android - iOS - 访问应用程序创建的文件和文件夹

ios - Alamofire - 不接受 failureCallBack 中的错误

ios - 为什么我不能在数组中附加标签?