【问题标题】:Interface-Builder outlets causing odd display behaviourInterface-Builder 出口导致奇怪的显示行为
【发布时间】:2011-11-08 21:44:22
【问题描述】:

我今天一直在努力将工作表添加到我的应用程序的主窗口。在分离两者(主视图/控制器和工作表视图/控制器)时遇到问题后,我已经将两个视图都放在同一个 xib 中并且都由主控制器控制。现在它在调用 beginSheet 方法时出现,我已经设计了表单,并将它连接到我的控制器上的 IBOutlets/Actions。

这就是问题所在。由于表单对象和控制器之间没有绑定,它可以完美显示。但是当我将按钮连接到 IBActions,并将文本字段/图像视图连接到 IBOutlets 时,我遇到了一些奇怪的显示问题。我说的是按钮不显示(但在单击它们应该在的位置时正在执行的操作),NSBox 的边框不显示,文本字段不接受任何键入的文本并显示(仍然空白)远离面板的可视区域。

我发现我可以通过稍微调整面板大小来纠正这个问题,但这不可用。我确实让它在 3 个文本字段和 3 个按钮上正常工作,并且只启用了关闭/最小化(并不是说它们实际上似乎对工作表做了任何事情),但现在我已经将一个图像视图连接到控制器和其中一个按钮不再显示。

这与我正在使用的插座/操作的数量有关(实际的主窗口实际上没有任何额外的)还是 IB 有问题或我做错了什么?

【问题讨论】:

    标签: cocoa interface-builder


    【解决方案1】:

    我的第一个怀疑是在绘制工作表期间某个地方抛出了异常。根据我的经验,当你得到你所描述的半画控件时,通常就是这种情况。检查 Xcode 中的调试器控制台,看看是否有任何错误消息被打印出来。您还可以在 objc_exception_throw 上添加断点,以便在引发异常时停止调试器,这可能会进一步阐明问题的确切来源。

    【讨论】:

    • 不幸的是,调试器控制台中根本没有任何内容表明它发生的原因。我添加了你建议的断点(只是为了检查 Show Debugger->Breakpoints->Double-Click for Symbol 并在那里输入?)并且没有发生任何新的事情。
    【解决方案2】:

    当我从头开始重建工作表时,这个问题就消失了。我不知道是什么导致了这个问题,但如果有人有类似的问题,我建议尝试在新工作表中重建它。

    【讨论】:

      猜你喜欢
      • 2013-01-13
      • 2011-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-27
      • 1970-01-01
      • 2011-08-19
      • 1970-01-01
      相关资源
      最近更新 更多