【问题标题】:View is clipping its content - NSPopUpButton only视图正在剪裁其内容 - 仅限 NSPopUpButton
【发布时间】:2017-11-20 05:07:25
【问题描述】:

在 Xcode 9 中,NSPopUpButton 现在发出关于“视图正在剪辑其内容”的警告。

唯一令人满意的设置似乎是在视图中水平拉伸它(左右固定约束)。

这个问题来自一个干净的项目,只是在情节提要中添加了这个弹出按钮。换句话说,可以很容易地重新创建。
约束是左上角简单固定到超级视图,并添加(自 Xcode 9 起)右侧“大于或等于”到超级视图,常量为“标准”。
此外,警告不是“黄色”警告。它仅在打开“问题导航器”(⌘5)时显示。 我当然假设,现在不需要弹出按钮来获取整个视图长度。

【问题讨论】:

  • 我试图重新创建问题,但我不能。您是否更改了弹出按钮的宽度或菜单?
  • @Willeke 不,我实际上创建了一个新项目,拖动弹出按钮并添加了前导尾约束。此警告不是黄色警告。它仅在打开警告左侧选项卡时显示(问题导航器,Cmd+5)。 (我将编辑我的问题以表明没有黄色警告)。
  • 实时问题已关闭。如果我添加更多弹出按钮,只有一个有问题。看起来像一个错误,谷歌“视图正在剪辑其内容”。
  • @Willeke 是的,“视图正在剪切其内容”是一个已知问题。有一些,除了这个,所有的都被清除了。这个似乎“认为”它是合法的。我会提交错误报告。

标签: macos cocoa xcode9 xcode-storyboard


【解决方案1】:

您只需要增加控件的大小,因为它的内容(属于它的 NSMenu 项)太大而无法放入 NSPopUpButton 控件中。 当您将控件拉伸到窗口末尾时,您的情况满足了该条件,并且您的控件变得足够大以包含其内容。

【讨论】:

  • 刚刚在 Xcode 10 下重新创建它。我正在使用约束,所以拖动它无关紧要。另外,我确实拖动并允许它“更新帧”。警告仍然存在,很容易按照说明进行复制。
  • 有一篇关于这个错误的好帖子(从 2017 年开始):indiestack.com/2017/01/…
  • 不是拖的问题。您只需要增加控件的大小,因为它的内容(属于它的 NSMenu 项)太大而无法放入 NSPopUpButton 控件中。当您将控件拉伸到窗口末尾时,您的情况满足了条件,并且您的控件变得足够大以包含其内容。
  • 就是这样!如果我给它更大的宽度(例如 >= 76 的约束),警告就会消失。初始宽度太小(猜测与内在尺寸有关)。如果您可以将其添加到答案中,那就太好了。基本上,它需要比其初始固有宽度更大的宽度,具体取决于最长的项目文本。通过添加 '>=' 宽度并将最小值扩展到足够宽的点(警告消失)来修复。
  • 那么...为什么不自动工作,没有 >= 宽度约束?首先,为什么“适合内容的大小”不让它成为它想要的大小;为什么控件不表达使其快乐的内在大小?该解决方案也对我有用,但我想了解原因以及如何在本地化的笔尖中处理此问题。
猜你喜欢
  • 2013-12-19
  • 2012-01-25
  • 1970-01-01
  • 1970-01-01
  • 2018-02-11
  • 2018-12-06
  • 2016-07-22
  • 2011-07-04
  • 1970-01-01
相关资源
最近更新 更多