0

我有以下 MasterViewController:

- (id) init{
self = [super init];
if(self){
    //self.title = @"Main Menu";
    //self.clearsSelectionOnViewWillAppear = NO;
    self.contentSizeForViewInPopover = CGSizeMake(320.0, 600.0);

    UIImageView* imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"view-1_0000s_0000_Muskoka-Logo1"]];
    self.navigationItem.titleView = imageView;

    self.tableView.backgroundColor = [UIColor clearColor];
    self.tableView.opaque = NO;
    self.tableView.backgroundView = [[UIImageView alloc] initWithImage:[UIImage    imageNamed:@"view-1_0002s_0003s_0001_Bottom-panel"]];
    self.tableView.scrollEnabled = NO;

}
return self;

}

当我尝试设置 tableviewcontroller 的背景颜色时它会崩溃,因为 master 中的 tableview 为空。那里的图像当然不是空的。

我唯一的猜测是 [super init] 无法正常工作?

4

1 回答 1

1

视图控制器的视图和子视图在加载之前不存在,这将发生在loadView(视图层次结构是在代码中或从 xib 中构建的)所有这些自定义项都应该在viewDidLoad. 我很惊讶它崩溃了,但是, nil 的消息不会导致崩溃。

于 2013-01-21T18:27:57.940 回答