1

我已经在这里呆了几个小时了。我在这个项目中有几个视图控制器,没有一个会引起问题,但现在突然之间有了这个新的。我什至删除了它并制作了一个“测试”视图控制器,但没有骰子。我能说的最好的就是它实际上并没有创建它的视图,因此当引用该视图时,应用程序崩溃了。除了 -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
4

3 回答 3

1

我想说仔细检查视图中的所有连接。特别是如果它被复制或移动,因为它很容易与旧 VC 建立连接

于 2012-12-31T22:23:02.840 回答
0

如果您没有在项目中使用 ARC,则不要检查 nib 文件的自动布局框。如果您使用的是 ARC,那么它与文件所有者的连接可能是唯一的问题。

于 2012-12-31T21:36:48.247 回答
0

如果您使用 xib,并且项目是从其他 xib 或故事板复制的,请确保根视图存在,然后拖动到文件的所有者。

于 2014-04-29T05:32:40.963 回答