2010-09-27 13 views
2

Je dois ajouter quelques méthodes au protocole délégué de ma sous-classe UITextField personnalisée. Donc, je mets cela dans l'en-tête:Est-il possible d'étendre un protocole comme celui-ci?

@protocol MyTextFieldDelegate (UITextFieldDelegate) 
- (void)textfieldDidSomething:(UITextField*)textField; 
@end 

Est-ce bien?

+1

Voir [Comment étendre les protocoles/délégués dans Objective-C] (http://stackoverflow.com/questions/732701/how-to-extend-protocols-delegates-in-objective-c) – BoltClock

Répondre

3

En principe, je pense que ça a l'air bien. Le seul point que je voudrais faire est que je voudrais écrire quelque chose comme:

@protocol MyTextFieldDelegate (MyTextFieldDelegateExtras) 
- (void)textfieldDidSomething:(UITextField*)textField; 
@end 

pour le distinguer des méthodes définies dans le protocole UITextFieldDelegate.

Mais vraiment si vous voulez étendre le protocole, puis utilisez:

@protocol MyTextFieldDelegate <UITextFieldDelegate> 
- (void)textfieldDidSomething:(UITextField*)textField; 
@end 
1

également lors de l'ajout des catégories son a proposé d'ajouter dans un fichier séparé avec la convention de nommage des MyTextFieldDelegate + MyTextFieldDelegateExtras.h

+0

peut-être que ce sera utile pour montrer du code au lieu de simplement du texte. – toxicate20