在swift类中实现AsyncSocket回调

时间:2014-06-14 06:06:11

标签: ios swift

我有一个自定义的ViewController委托类,它处理ui操作,例如单击按钮并在文本视图中显示文本。

现在我想在课堂上使用AsyncSocket。我已经能够创建一个套接字对象

var tcpSocket = GCDAsyncSocket(delegate: self, delegateQueue: dispatch_get_main_queue())

现在我想实现那些回调函数,例如在GCDAsyncSocket.h中提供声明的didConnectToHosts(...):

- (void)socket:(GCDAsyncSocket *)sock didConnectToHost:(NSString *)host port:(uint16_t)port;

如何在swift类中实现此功能?

1 个答案:

答案 0 :(得分:6)

// - (void)socket:(GCDAsyncSocket *)sock didConnectToHost:(NSString *)host port:(uint16_t)port;
func socket(socket : GCDAsyncSocket, didConnectToHost host:String, port p:UInt16) 

// - (void)socket:(GCDAsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag;      
func socket(socket : GCDAsyncSocket, didReadData data:NSData, withTag tag:Int32) 

不要忘记让你的swift类继承自NSObject,否则GCDAsyncSocket将无法将其指定为委托。

另外,请勿将任何参数标记为var

中的var didReadData data:NSData