【问题标题】:Can't run project anymore无法再运行项目
【发布时间】:2011-10-30 19:39:09
【问题描述】:

我的项目曾经被称为“TextFieldDemo”,然后我将其重命名为“ShiftCipher”。我无法再启动该项目了。这是我收到的信息。可以帮忙吗?

GNU gdb 6.3.50-20050815(苹果版 gdb-1708)(8 月 8 日星期一 20:32:45 UTC 2011) 版权所有 2004 Free Software Foundation, Inc. GDB 是免费的 受 GNU 通用公共许可证涵盖的软件,并且您是 欢迎在某些情况下更改和/或分发它的副本 条件。键入“显示复制”以查看条件。有 GDB 绝对不保修。键入“显示保修”以获取详细信息。 此 GDB 配置为“x86_64-apple-darwin”.sharedlibrary apply-load-rules all 附加到进程 2285. 2011-10-30 19:35:49.914 ShiftCipher[2285:f803] * 终止应用程序由于 未捕获的异常“NSInternalInconsistencyException”,原因:“可能 不在包中加载 NIB:“NSBundle(已加载)”,名称为“TextFieldDemoViewController” * 第一次抛出调用栈:(0x14ce052 0x11b9d0a 0x1476a78 0x14769e9 0x585838 0x42ce2c 0x42d3a9 0x42d5cb 0x38da73 0x38e0b8 0x230b 0x3659d6 0x3668a6 0x375743 0x3761f8 0x369aa9 0x1bc4fa9 0x14a21c5 0x1407022 0x140590a 0x1404db4 0x1404ccb 0x3662a7 0x367a9b 0x225d 0x21d5) 终止调用抛出异常当前语言:自动; 目前是objective-c (gdb)

TextFieldDemoViewController 现在称为 ShiftCipherViewController。我不知道它为什么要用旧名称来寻找它。

【问题讨论】:

  • 更改名称时最好使用 Xcode 重构工具。

标签: iphone xcode


【解决方案1】:

查看您尝试加载的 XIB 文件,并查看“文件所有者”列出的内容。

我的猜测是它仍然设置为“TextFieldDemoViewController”而不是“ShiftCipherViewController”。这就是你需要做出改变的地方。

【讨论】:

  • 重构工具将在 XC4.2 中正确修复此问题
  • 文件的所有者被列为“TextFieldDemoDelegate”。只需要弄清楚如何改变它
  • MainWindow.xib的界面生成器中的一个黄橙色框。当我将鼠标悬停在它上面时,它被称为 TextFieldDemoAppDelegate,但是当我单击它时,它会打开 ShiftCipherAppDelegate。关于如何改变它的任何想法?
  • 修复了应用委托。不幸的是,问题仍然存在。
  • 彻底清理并重建,看看是否能解决您的问题。更新的 xib 有时并不总是被复制到构建产品目录中。
【解决方案2】:

您有一个曾经被命名为 TextFieldDemoViewController.xib 的 nib。该文件可能已重命名为 ShiftCipherViewController.xib 之类的文件。您可能仍在 initWithNibName 中引用 TextFieldDemoViewController。

【讨论】:

  • 如何更改 initWithNibName?
  • 在您的项目中搜索 TextFieldDemoViewController
  • 会不会是iPhone模拟器中的缓存?
  • 您可能在 nib 内创建 VC,这通常是 UITabViewController 的情况。在这种情况下,子 nib 名称在 IB 窗口内指定。
猜你喜欢
  • 2021-02-09
  • 1970-01-01
  • 2018-04-05
  • 1970-01-01
  • 2015-01-12
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多