2010-12-15 131 views
3

Voici la méthode que je voudrais appeler:méthode d'appel « (id) de l'expéditeur » dans Xcode

- (void)myMethod:(id)sender { 

Comment pourrais-je appeler? J'ai essayé:

[self myMethod] 

^erreur: Expression attendue avant jeton "]".

Je sais que cela est une question simple, mais je suis nouveau pour iPhone Développement

Répondre

12

La méthode prend un paramètre, vous devez donc lui donner un. Si vous n'avez pas l'expéditeur que vous voulez donner, juste passer nul:

[self myMethod:nil];

Vous pouvez également surcharger la méthode comme une commodité:

// declarations 
- (void)myMethod; 
- (void)myMethod:(id)sender; 

// implementations 
- (void)myMethod { [self myMethod:nil]; } 
- (void)myMethod:(id)sender { /* do things */ } 
+0

fixe votre mise en œuvre; bonne réponse. – bbum

+0

@bbum: Vous avez corrigé mon exemple pendant que je l'éditais pour le réparer lol. Merci mec –

1

Vous devez transmettre un expéditeur lorsque vous appelez il. En d'autres termes, vous devez avoir un argument à transmettre lorsque vous appelez la méthode. En d'autres termes, vous devez avoir un argument à transmettre.

4

À moins que vous vouliez envoyer un objet type non spécifié à votre méthode, vous n'avez pas besoin la partie (id)sender:

- (void)myMethod { 

}