【问题标题】:set subViews with different width horizontal in a superview在超级视图中设置具有不同宽度水平的子视图
【发布时间】:2017-06-18 03:16:08
【问题描述】:

我想在一个视图中创建 6 个子视图,它们具有不同的宽度和相同的高度。它应该适合 iPad 和 iPhone 的水平、所有屏幕分辨率。任何人都可以帮我解决这个问题。

【问题讨论】:

  • 使用 UIStackView。

标签: ios objective-c swift aspect-ratio ios-autolayout


【解决方案1】:

无需任何额外的逻辑(即,如果内容不合适,哪些视图会变小或不缩小),您可以这样做:如果视图从左到右对齐并编号为 1 到 6

  • 定义最左边的视图 (1) 与左边缘的距离
  • 定义最右边的视图 (6) 与右边缘的距离
  • 定义视图之间的距离(即 1 到 2、2 到 3 等)
  • 将水平“抗压优先级”设置为不同的值

您可以单独设置相同的高度,也可以只为一个视图设置相同的高度,为其他视图设置相同的高度。

【讨论】:

  • 是的,我试图这样做。但它会询问我所有视图的宽度或 x 位置。
  • 您可以调整水平的“内容压缩阻力优先级”,使它们都不同。
  • 谢谢。我已经使用纵横比实现了它:)
猜你喜欢
  • 1970-01-01
  • 2018-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-11
  • 2020-07-27
  • 2021-06-06
相关资源
最近更新 更多