我有一个类(Ntwk),我想用于网络通信。这个类将处理所有网络I/O,但是使用异步I/O,我必须在Ntwk中声明didReceivData委托,这完全破坏了我的数据流。这就是为什么-
ViewController正在创建一个Ntwk对象,并在其中调用PostData函数并立即返回。那么现在ViewController是如何从调用中获取数据的呢?这肯定是一个已解决的问题,obj-c可能已经提供了一种方法来实现这一点,但我完全迷失了方向。我正在学习这个,所以我在寻求帮助。
我看到了两种解决这个问题的方法-
这两种都有可能吗?
正确的方法是什么?
发布于 2015-10-22 18:39:47
您提到的方法是正确的,但是如果您在同一个类中声明了DidReceiveData方法,那么我们就无法实现MVC,并且当您为功能创建网络类时,您可以使用块回调引用,也可以使用代理协议方法,为此您需要设置带有self的委托作为调用类的引用,然后当任务完成时,只需从该委托引用调用协议调用方法。这也许能解决你的问题。
https://stackoverflow.com/questions/33293697
复制