2010-12-05 32 views
13

Je suis curieux de savoir si et comment faire un contrôleur être le délégué pour deux objets différents.Objectif C: délégués multiples

Est-ce autorisé ou est-ce comme l'héritage multiple en Java?

Supposons que je voulais avoir un contrôleur qui a répondu à: <UIAccelerometerDelegate> et <CLLocationManagerDelegate>

Est-ce que le regard du fichier d'en-tête comme ça?

@interface MainViewController : UIViewController <UIAccelerometerDelegate> AND <CLLocationManagerDelegate> { 

Répondre

36

En fait, il fonctionne très bien. Déclarez votre interface comme ceci:

@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate> 

puis d'implémenter les méthodes à partir des deux interfaces de délégué.

4

Aussi simple que cela:

@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate> 
6

Nope, comme ceci:

@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate> { 
5
@interface MainViewController : UIViewController <UIAccelerometerDelegate, CLLocationManagerDelegate>