gpt4 book ai didi

iphone - 无法加载名为 "TwitterDrilldownView"的 Nib

转载 作者:行者123 更新时间:2023-12-03 20:58:49 25 4
gpt4 key购买 nike

-[UIViewController _loadViewFromNibNamed:bundle:] was unable to load a nib named "TwitterDrilldownView"

当我将新的 ViewController 推送到导航堆栈时,出现上述错误。这是推送代码,


[self.navigationController PushViewController:[[[TwitterDrilldownViewController alloc] initWithTwitterAnnotation:temp] autorelease] 动画:YES];

基本上,我只是将新分配和初始化的 View 插入堆栈。 ViewController 的 init 方法是,

- (id)initWithTwitterAnnotation:(TwitterInfo *)aPOI {  
if(self = [super init]) {
poi = aPOI;
}

return self;
}

如您所见,我没有使用任何 nib 方法进行初始化,并且我的项目中没有名为 TwitterDrilldownView 的 nib 文件。

在创建名为 TwitterDrillDownView 的 TwitterDrilldownViewController 之前,我确实有一个 nib 文件,但我用它来测试布局,并且从未使用过它。当我创建 TwitterDrilldownViewController 时,项目中存在 TwitterDrillDownView.nib,在此阶段之后我删除了该 nib。

我能想到的这个问题的唯一原因是 Xcode 以某种方式创建了对 nib 文件的依赖关系,因为 nib 文件和 View Controller 的命名相同(TwitterDrilldownView.nib,TwitterDrilldownViewController.m),就好像它是试图提供帮助,但最终搞砸了我的项目。

我尝试删除并重新创建 View Controller ,希望任何引用都会被销毁,并删除了项目中对 nib 文件的任何引用,但无济于事。

有人有解决这个问题的经验或知道可能的解决方案吗?

最佳答案

从我的项目中删除 XIB 文件后,这也发生在我身上。不过,我做了一些乱七八糟的事情,并能够解决这个问题。

关键点是,当您在其中创建 XIB 和导出/操作时,Xcode 似乎在某处保留了某种引用手动删除 XIB 文件只会孤立这些引用强>。使用接口(interface)生成器 (UB) 和 XIB 逐一删除这些连接似乎可以正确取消引用它们。

解决方案就很清楚了:

  1. 重新创建一个具有相同名称和相似结构的 XIB 文件(包括您之前的输出和操作)。 (注意:如果您不记得如何重新构建 XIB 的导出和操作,只需重新创建同名的 XIB 文件并跳至下面的“如果仍然失败”注释.)
  2. 使用界面生成器 (IB) 手动逐一删除 XIB 中的所有 socket 和操作。
  3. 重新构建应用程序;如果现在有效,您可以删除 XIB。

(注意:如果仍然失败,您可能会遇到不同的错误。如果错误涉及键值合规性,那么它将在错误 - 这个方法就是你的问题。确保你在 IB 中重新创建了命名的 socket /操作,并使用 IB 手动删除它。这似乎取消了 Xcode/你的构建环境中的调用引用。)

狩猎快乐!

关于iphone - 无法加载名为 "TwitterDrilldownView"的 Nib ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2765444/

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