我创建了一个View控制器,我需要在不同的应用程序中经常使用一些方法。如果我直接使用它就像魅力一样,但是当我尝试创建另一个扩展我的类的UIViewController时,我再也无法访问self.view了。这是原始类的init方法:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil slideFrom:(HalfViewControllerType) from {
self.slideFrom = from;
if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) {
CGRect viewScreen = [self.view bounds];
[self moveTo:startPoint inDuration:0.0];
}
return self;
}
在检索[self.view bounds]时,我得到了一个EXC_BAD_ACCESS。 即使手动乱砍这些值,它也会失败到所有其他的self.view,如变换动画等等。
创建视图的调用是这样的,但它在init方法之后永远不会得到:
SelectViewController *sVC = [[SelectViewController alloc] initWithNibName:@"SelectViewController" bundle:nil slideFrom:top];
[sVC setDelegate:self];
[self.view addSubview:sVC.view];
[sVC slideIn];
[sVC release];
理解我所做错的任何帮助都会非常感激。 弗朗西斯。
答案 0 :(得分:0)
我无法理解发生了什么,所以我重写了一切,现在有效。我可以猜测我发布了一些我不应该发布的东西。