gpt4 book ai didi

cocoa - 如何追踪 KVC 异常 : this class is not key value coding-compliant for the key toolbar? 的来源

转载 作者:行者123 更新时间:2023-12-03 18:05:28 25 4
gpt4 key购买 nike

当我尝试运行我的应用程序时收到此错误:

2010-04-29 13:49:01.355 MyApp[56123:207] *** Terminating app due to uncaught
exception 'NSUnknownKeyException', reason: '[<MyViewController 0x5112b10>
setValue:forUndefinedKey:]: this class is not key value coding-compliant for
the key toolbar.'

MyViewController 曾经有一个名为“toolbar”的 IBOutlet,它连接到 Nib 中的 UIToolbar 对象。我决定不再需要工具栏或 Nib ,因此我将它们从项目中删除了。但 Xcode 似乎仍然想引用“工具栏”。

如果我不再使用 Nib ,对工具栏的引用可能在哪里?我可以合成一个虚拟的“工具栏”属性来安抚 Xcode,但我想避免这种丑陋的黑客行为。

编辑:奇怪的是,当我在设备而不是模拟器上运行代码时,没有引发异常。另外,当我对 MyViewController 使用一个简单的 Nib (不包含工具栏)时,异常消失了。我正在使用 git,当我返回运行 MyViewController 之前提交的代码时,甚至有工具栏或 Nib ,这些奇怪的也给出了异常。该代码过去运行良好。我确实认为这个异常与 Xcode 和模拟器以及我从项目中删除不需要的 Nib 时留下的某种剩余状态有关。

最佳答案

Xcode 是一个 IDE。当您的应用程序运行时,并不是 Xcode 向您的 View Controller 请求工具栏。

有两种方法可以解决此问题:

  1. objc_exception_throw 上设置断点,然后在调试器下运行您的应用。
  2. -[NSObject(NSKeyValueCoding) valueForUndefinedKey:] 上设置断点,然后在调试器下运行您的应用。

无论哪种方式,当异常发生时,调试器都会中断(中断)您的应用程序。查看堆栈跟踪以了解发送 valueForKey: 消息的内容。

关于cocoa - 如何追踪 KVC 异常 : this class is not key value coding-compliant for the key toolbar? 的来源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2740779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com