【发布时间】:2015-06-03 15:51:30
【问题描述】:
我刚刚更新到 xcode 6.2,在显示新创建的视图(在名为 myController 的视图控制器中)时遇到问题:
[self.navigationController pushViewController:myController animated:YES];
viewDidLoad 和 viewWillAppear 在myController 中都可以正常调用(即在控制台中看到NSlog 输出),但由于某种原因,创建的 XIB 的界面保持空白。导航控件有效并且位于空白屏幕上方。在模拟器和设备上运行时会发生这种情况。
旧视图控制器在同一应用程序中以相同方式调用时不会出现此问题。有趣的是,动态生成的视图会显示,但在界面构建器中创建的新视图保持空白。我曾尝试复制旧的 XIB 并创建一个新的,但不会显示界面(带有一个按钮的简单屏幕)。
在根控制器中调整新视图的所有步骤都已执行,只是似乎不会显示XIB。控制台中绝对没有错误输出表明任何错误。
有什么想法、解决方法、日志文件要检查吗? (除了使用旧版本的 xcode)。
谢谢
【问题讨论】:
-
我的第一个猜测是 self.navigationController 为零...你的视图控制器有吗?在该行之前添加
NSLog(@"%@", self.navigationController);。 -
我将不得不稍后检查,但在 Delegate 文件中肯定已经配置了 NavigationController。我不确定为什么 NavigationController 对于一个 TableView 启动选项是 nil 而不是另一个。这是一个成熟的应用程序,我正在改进中。
-
self.navigationController 不是零。唯一的选择似乎是以编程方式构建界面
标签: ios xib pushviewcontroller