1

我目前正在将此视图设置为在 iPhone 游戏中与另一个视图交换。当我使用此代码时...

- (void)viewDidLoad {
     menuViewController = [[menuViewController alloc] initWithNibName:@"SomeViewController" bundle:nil];
     self.menuViewController = menuViewController;
     [self.view insertSubview:menuViewController.view atIndex:0];
     [menuViewController release];
}

...Xcode 给我一个警告“'SomeViewController' 可能不会响应'-alloc'。我不知道如何摆脱这个警告......有人可以帮助我吗?

编辑:也许这会有所帮助。在我的 .h 文件中,我有这个......

@interface RabbitReflexViewController : UIViewController {
    IBOutlet SomeViewController *menuViewController;
}

...以及其他一些代码。我的 .m 文件包含上面的内容。

4

3 回答 3

8

[someViewController alloc]中, someViewController 应该是类名而不是实例。所以可能你想要[SomeViewController alloc]

于 2009-12-27T05:54:21.533 回答
2

这里的问题与其说是编译器错误,不如说是您不知道自己在做什么。我建议您按照自己的方式完成 Apple 开发人员网站上的教程材料。这样你就可以从基础材料进步到更高级的材料。也许从这里开始:http: //developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhone101/Articles/00_Introduction.htmlhttp://developer.apple.com/iphone/library/referencelibrary/GettingStarted/ Learning_Objective-C_A_Primer/index.html#//apple_ref/doc/uid/TP40007594

于 2009-12-27T08:21:16.857 回答
0

还有另一种方法可以得到这个错误,当你得到它时很明显,但有点难以发现。我有我正在玩的工作代码并且犯了一个愚蠢的手指错误,得到了错误。这里是:

MyClass* MyClass = [[MyClass alloc] init];
... used MyClass ...

显然我的意思是MyClass* myClass

于 2012-02-10T18:27:05.113 回答