2009-12-27 8 views
1

Je suis en train de configurer cette vue pour qu'elle soit permutée avec une autre dans un jeu iPhone. Quand j'utilise ce code ...'SomeViewController' peut ne pas répondre à '-alloc'

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

... Xcode me donne un avertissement « SomeViewController» ne peut pas répondre à «-alloc. Je ne peux pas comprendre comment se débarrasser de cet avertissement. ..can personne me aider

Edit:?.. Peut-être que cela vous aidera dans mon dossier .h, je ... ce

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

... avec un autre code de mon fichier .m contient ce qui est ci-dessus

Répondre

8

Dans [someViewController alloc], someViewController devrait être un nom de classe plutôt qu'une instance. Donc probablement vous voulez [SomeViewController alloc].

+0

Lorsque je modifie mon code à votre suggestion, l'avertissement disparaît MAIS lorsque l'iPhone Simulator se lance, rien ne se charge du tout (au lieu du lancement de l'application). Oui, je suis nouveau à la programmation iPhone. : P –

+0

Vous pouvez vérifier la console (Run | Console dans Xcode) pour voir si des exceptions ou d'autres messages sont enregistrés au démarrage de votre application. Si votre application génère une exception pour une raison quelconque, elle ne pourra pas démarrer correctement. –

2

Le problème ici n'est pas tellement l'erreur du compilateur que vous n'avez aucune idée de ce que vous faites. Je vous recommande de suivre le didacticiel sur le site des développeurs Apple. De cette façon, vous pouvez passer du matériel de base au matériel plus avancé. Peut-être commencer ici: http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhone101/Articles/00_Introduction.html et http://developer.apple.com/iphone/library/referencelibrary/GettingStarted/Learning_Objective-C_A_Primer/index.html#//apple_ref/doc/uid/TP40007594

+3

C'est un peu dur. Ce site est censé être convivial pour les nouveaux programmeurs, ainsi que pour les plus expérimentés. –

+0

Oui, je suis nouveau à la programmation ... c'est pourquoi je poste ici pour l'aide. Cela n'a cependant pas aidé à comprendre quel était le problème. Merci pour les liens, de toute façon, je vais les lire. –

+0

Désolé si cela semblait dur. Vous dire comment réparer l'erreur ne vous aidera pas beaucoup, vous rencontrerez simplement un autre problème que vous ne pourrez pas résoudre en un jour ou deux. Il devrait être beaucoup plus facile de commencer depuis le début. Si vous apprenez au moins la syntaxe Objective-C, vous n'aurez pas autant de problèmes à comprendre la signification des messages d'erreur. –

0

Il y a une autre façon d'obtenir cette erreur est évidente lorsque vous l'obtenez, mais un peu difficile à repérer. J'avais un code de travail avec lequel je jouais et j'ai fait une erreur stupide en obtenant l'erreur. Le voici:

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

Évidemment, je voulais dire MyClass* myClass.

Questions connexes