2009-11-03 16 views
18

Ho riscontrato il seguente errore durante la compilazione della mia app.Objective-C double Delegate protocol

avvertimento: classe 'ConfigureViewController' non implementa il protocollo 'MPMediaPickerControllerDelegate'

so che significa che devo implementare il delegato nel controller. cioè @interface ConfigureViewController : UIViewController <MPMediaPickerControllerDelegate>

Tuttavia, la mia regolatore di corrente ha già un implementazione delegato per <UITextFieldDelegate> cioè @interface ConfigureViewController : UIViewController <UITextFieldDelegate>

Come posso fare a questo problema?

Grazie, Tee

risposta

47

Basta separarli da una virgola: <MPMediaPickerControllerDelegate, UITextFieldDelegate>

13

Si può implementare protocolli multipli specificando protocolli multipli nella dichiarazione della classe.

In questo caso, al fine di attuare sia MPMediaPickerControllerDelegate e UITextFieldDelegate, la dichiarazione della classe sarebbe:

@interface ConfigureViewController : UIViewController < UITextFieldDelegate, MPMediaPickerControllerDelegate > 
+0

Uh oh, che è più facile di quanto pensassi. Grazie coobird – teepusink