2015-03-10 1 views
-2

Je suis nouveau dans swift et je veux créer le protocole en swift. La même chose que je fais dans l'objectif c.comment créer mon propre délégué (protocole) dans swift?

@protocol CustomURLConnectionDelegate; 

    @interface CustomURLConnection : NSObject <NSURLConnectionDataDelegate,NSURLConnectionDelegate> 
    { 
     //Data 
     NSMutableData *receivedData; 

     //Connection 
     NSURLConnection *urlConnection; 

    } 
//Delegate for Protocol 
@property(nonatomic, unsafe_unretained) id<CustomURLConnectionDelegate> delegate; 


//Init Method 
-(CustomURLConnection *)initURLConnectionWithRequest:(NSURLRequest *)request withTag:(NSInteger)apiTag; 
@end 
    @protocol CustomURLConnectionDelegate <NSObject> 
    @optional 
    -(void)getReceivedData:(NSDictionary *)dictionary withTag:(NSInteger)dataTag; 
    -(void)getReceivedData:(NSDictionary *)dictionary withTag:(NSInteger)dataTag withObj:(NSObject *)obj; 
    -(void)getDidFail:(NSString *)error withTag:(NSInteger)dataTag; 
    -(void)bytesReturn:(float)returnBytes expectedTotalBytes:(float)totalBytes withTag:(int)progressTag; 
    @end 

Mais Comment faire la même chose avec swift?

Répondre

2

Cochez la case Apple documentation about protocols. Il suffit montré que vous pouvez faire des protocoles comme ça:

protocol YourProtocolName { 
// protocol definition goes here 
} 

Et pour l'appeler:

weak var delegate:YourProtocolName? 
+0

oui je fais la même chose mais c objective nous déclare l'id '@property (nonatomic, unsafe_unretained) < CustomURLConnectionDelegate> delegate; 'Comment puis-je faire la même chose dans swift? –

+0

J'ai modifié ma réponse. – Christian

+0

et une chose de plus que je demande dans l'objectif c nous déclarons protocole d'abord et plus tard nous avons mis en œuvre devrait même chose que nous faisons dans swift ou déclarer et mettre en œuvre à un endroit? –