UIViewController没有调用viewDidLoad&没有创建导致崩溃的UIView

时间:2012-12-31 20:33:14

标签: objective-c ios uitableview uiview uiviewcontroller

我已经在这几个小时了。我在这个项目中有几个View Controllers而且没有一个会导致问题,但现在突然间这个新的了。我甚至删除了它并制作了一个“测试”视图控制器,但没有骰子。我可以告诉它最好的不是实际创建它的视图,因此当引用视图时应用程序崩溃。除了-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

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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