最小窗口尺寸再次调整

时间:2015-07-15 01:55:17

标签: objective-c macos window

我正在开发OS-X应用程序,我需要有关窗口大小的建议。

在有人跳过并将此问题声明为重复之前,我已经阅读了这篇文章:Window Size for Mac application但它并没有帮助我解决我的问题。

我的问题如下。我使用NSTableViews来显示一些数据。但是在某些窗口中,由于列的数量,我在NSTableView中获得水平滚动条。

更糟糕的是,某些列中的数据不完全可见,您必须调整列的大小以显示该单元格/列中的完整文本。

我正在考虑增加初始窗口大小,但我无法确定多少。

我当前的窗口大小是1024 x 768.用户可以将应用程序全屏显示,窗口可以调整为大于此大小,但不能更小。

任何帮助都将深受赞赏。

问候,约翰

2 个答案:

答案 0 :(得分:1)

如果为行内的文本设置约束,则可能会获得一些水平滚动。但是,如果您将应用程序元素(如UITableView)的约束设置为应用程序窗口的边框,则可以解决此问题。

答案 1 :(得分:1)

对于表格,您应该为每列设置最小宽度。选择文档大纲中的每个列,然后查看“大小”检查器。您还应该查看“属性”检查器上的“调整大小”弹出窗口。

同样,您应该在“属性”检查器上查看表视图本身的“列大小调整”弹出窗口。

关于窗口大小,我建议您使用自动布局(如果您尚未使用)。对所有视图应用适当的约束,最终将它们(直接或间接)与窗口的内容视图相关联。然后,不要为窗口本身设置最小尺寸。让约束强加有效的最小(甚至可能是最大)尺寸。

但诀窍在于并非所有视图都具有固有的最小尺寸。例如,表格视图本身可能不会比其列的最小宽度之和更窄,但它在滚动视图中。滚动视图允许比表视图更窄,从而导致水平滚动。因此,您可能需要向滚动视图添加显式的最小宽度约束。

相关问题