【发布时间】:2012-12-31 20:33:13
【问题描述】:
我已经在这工作了几个小时了。我在这个项目中有几个视图控制器,没有一个会引起问题,但现在突然之间有了这个新的控制器。我什至删除了它并制作了一个“测试”视图控制器,但没有骰子。我能说的最好的就是它实际上并没有创建它的视图,因此当引用该视图时,应用程序崩溃了。除了 -viewDidLoad 方法中的日志语句外,测试 VC 没有添加或删除代码。我没有覆盖-loadView。我尝试将视图添加到子视图,尝试将 VC 推入导航控制器,我什至尝试过简单地记录 test.view。我曾尝试使用 NIB 创建 VC,但没有尝试过。绝对没有任何效果。任何帮助将不胜感激。
在另一个 VC 中创建 VC。日志语句导致崩溃。但是添加为子视图甚至推入导航控制器也是如此。
TestViewController *test = [[TestViewController alloc] init];
NSLog(@"test view = ", test.view);
TestViewController 的实现。
@implementation TestViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
NSLog(@"view = %@", self.view);
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
【问题讨论】:
-
不支持嵌套 VC,不会传播对 viewDidLoad(和类似方法)的调用。
-
我无法从项目中的任何位置访问此视图。即使在应用程序委托中,我也已经在多个不同的类中尝试过它。
-
调试器控制台崩溃时会显示哪些消息?或者 Xcode 是否使用绿色的 EXC_BAD_ACCESS 标记或类似标记来标记一行代码或汇编程序?
标签: objective-c ios uitableview uiview uiviewcontroller