【问题标题】:Can't change height of NSTextField in Interface Builder无法在 Interface Builder 中更改 NSTextField 的高度
【发布时间】:2014-06-20 18:29:48
【问题描述】:

当我做一些简单的事情时,比如在界面构建器中添加一个包装文本字段(拖放方法),我发现我无法使用鼠标指针调整对象的大小。

例如,一旦我将此环绕文本字段放置在文档的左上角,我就无法通过向下拖动底部中间尺寸工具来调整对象的高度。

在 Interface Builder 中调整不同对象的大小时,总是会发生这种情况,真是令人沮丧!唯一的解决方法似乎是打开 Size Inspector 并通过增加值来手动调整对象的高度。

我做错了什么?是因为当我将对象放在文档的左上角时,它会夹在文档的左上角吗?我没有添加任何约束,只是将元素拖放到 xib 中的 Document 上。

我在 OS X 10.9.2 (13C1021) 上使用 Xcode 版本 5.1.1 (5B1008)

【问题讨论】:

  • 许多 UI 元素都有固定的高度,这可能是造成这种情况的原因。
  • 是的,看起来是这样,在玩了一会儿之后,我现在发布了我的答案。似乎“使用自动布局”功能阻止了我用鼠标指针更改 NSTextField 的高度。我不确定在哪里可以看到 NSTextField 有这个固定的高度属性,它是在某个地方的设置中吗?

标签: cocoa interface-builder xib nstextfield nsdocument


【解决方案1】:

好的,在 Interface Builder 中玩了一会儿之后,我注意到我可以关闭文件检查器中的“使用自动布局”功能。现在,当我切换到 Sizing Inspector 时,我有一个易于使用的“自动调整大小”功能,当我将鼠标悬停在预览上时,它会准确显示 NSTextField 在重新调整父文档大小时的大小。

此外,一旦我关闭了“使用自动布局”,我可以使用鼠标指针在 Interface Builder 中调整 NSTextField 的高度和宽度。

我猜“使用自动布局”将 NSTextField 的高度限制在它认为应该的适当高度,但我不知道它是从哪里得到这个值的。

【讨论】:

  • 自动布局是基于约束的。它是在开发期间设置的,缺少的约束是在构建时设置的。
  • 这可以解释它,因为我正在寻找我可能不小心设置的任何约束,但我看不到任何约束。在构建时从哪里读取缺失的约束值@d00dle?有没有什么地方我可以真正看到高度、宽度等的默认值?
猜你喜欢
  • 2011-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-08
  • 2013-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多