【问题标题】:OS X App - Cannot Resize App WindowOS X 应用程序 - 无法调整应用程序窗口大小
【发布时间】:2016-03-06 22:35:10
【问题描述】:

我有一个最初使用 Xcode 4 构建的 OS X 应用程序,现在使用 Xcode 7。当“springs-and-struts”被约束取代时,我重新设计了 UI 以使用约束。很简单,而且似乎效果很好。

在第一次发布两年后快进,在第二次发布时,我需要添加控件并增加主应用视图的高度。不幸的是,我的测试团队使用的是较小的屏幕,无法看到整个视图。他们需要垂直调整大小。

问题 - 即使选中了调整大小控件框,窗口也无法调整大小。控件在运行时不显示。我试过了

  • 设置较低的最小窗口内容大小高度,但这并没有改变任何东西。
  • 更改内容压缩阻力并没有改变任何东西。

我认为这个问题与约束有关......关于如何调整大小的任何想法?

编辑:在玩了一些新的测试应用程序之后,我更确定问题是由于限制所致。我有一个控件,我将前导和尾随空间限制为超级视图和宽度 - 水平调整大小。

我真的需要一个视图,用户可以在其中调整窗口大小,但滚动内容。但是,在这种情况下,内容是其他控件。我认为在 iOS 上,我会使用 UIScrollView。在 OS X 上,我尝试过滚动视图控件并尝试嵌入到滚动视图中,但都没有达到预期的效果。

【问题讨论】:

    标签: xcode macos resize constraints autolayout


    【解决方案1】:

    我遇到了同样的问题,并通过在视图控制器中添加一个用作“容器”的视图来解决它。

    将“容器视图”的左上角固定到视图控制器(前导空格 0 和顶部空格 0)。在“容器视图”上向视图控制器添加相等的宽度和高度约束。然后将所有对象移动到“容器视图”中,并在“容器视图”而不是视图控制器上添加对象约束。

    【讨论】:

      【解决方案2】:

      就我而言,它是以这种方式发生的(Xcode 13.1)。

      我错误地从 IB窗口视图层次结构之外添加了一个视图。新视图被添加为一个单独的对象(界面构建器文件中的顶部节点)。我通过拖放将新视图添加到窗口中。

      我发现新视图有不同的行为,例如,我无法设置顶部空间约束。在视图层次结构中使用此视图,我根本无法更改窗口大小(内容视图大小)。

      我删除了视图并在视图层次结构中添加了另一个视图,它正常工作。

      如果它是一个单独的对象(界面构建器文件的顶部节点),我认为 IB 会以不同的方式初始化视图。

      【讨论】:

        猜你喜欢
        • 2011-07-26
        • 1970-01-01
        • 1970-01-01
        • 2012-10-04
        • 1970-01-01
        • 1970-01-01
        • 2015-10-13
        • 1970-01-01
        • 2011-02-03
        相关资源
        最近更新 更多