【问题标题】:Need help better understanding UIStackView需要帮助更好地理解 UIStackView
【发布时间】:2016-07-27 15:37:06
【问题描述】:

我通过此tutorial 观看以了解UIStackView,但我仍然遇到问题。 This 是我现在正在使用的。下半部分(部分被日期选择器覆盖)是我想要实现的。

一行三个水平视图,下面三个垂直视图。从我的 stackview 层次结构中可以看出,白色背景视图和橙色背景视图位于垂直堆栈中。我没有触摸带有白色背景的视图来显示正在发生的事情的对比。

  • 月、日、周在水平堆叠中。
  • 秒、分、小时是垂直堆叠的。
  • 那么这两个堆栈在一个垂直堆栈中。

垂直堆栈在每个方向固定 20 像素。

我不确定如何解决此问题。

谢谢!

【问题讨论】:

    标签: ios xcode uistackview


    【解决方案1】:

    如果不能查看每个约束和堆栈视图设置,很难给你一个明确的答案,但这里有一些指针可能会让你到达某个地方:

    • 您的秒、分和小时堆栈视图包含三个水平堆栈视图,每个视图仅包含一个“卡片视图”。这些堆栈视图没有做任何事情,因此我建议将其简化为垂直堆栈视图中的三个卡片视图。
    • 您的堆栈视图可能与您认为的不一样。模拟器中的外观表明它没有固定在它所在的视图上。或者,该视图可能未正确固定到顶级视图。
    • 上述排序完成后,您可能需要查看堆栈视图设置,我怀疑您在最低级别的垂直和水平堆栈视图都应设置为平均填充,目前可能并非如此.
    • 要检查的另一件事是您没有相互冲突的约束。如果您将东西放入已经定义了高度、宽度、纵横比等的堆栈视图中,那么这可能会干扰堆栈视图发挥它们的作用。
    • 最后,如果所有其他方法都失败了,请丢弃所有堆栈视图和约束,并使用尽可能少的每个视图和约束来重建它们。首先堆栈视图,然后是堆栈视图设置,然后仅在您需要的地方进行约束。

    一般来说,我建议不要在界面构建器中使用“iPhone 形”视图控制器,它们往往会隐藏运行时或不同尺寸设备上会出现的问题,并给人一种虚假的安全感。通用的方形视图是更好的选择。最后,不要放弃,所有掌握堆栈视图的人都曾在某个时候绝望地看着这样的屏幕,双手抱头!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-07
      • 2015-03-27
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多