视图或委托中的iOS AsyncSocket
问题描述:
如果我在AppDelegate中使用AsyncSocket,我得到了一个连接。是否有可能在视图中定义套接字?因为要调用的方法名为initWithDelegate。我只需要一些视图中的连接。我也需要这个连接在一个线程作为aditional类。我可以通过构造函数传递连接吗?视图或委托中的iOS AsyncSocket
答
您可以。但是你应该添加套接字作为单例类的属性。这样,您就可以从任何需要的地方访问。
答
将网络代码放在视图中让我感觉不对。你的观点应该处理显示和用户交互,并且通常应该不知道数据来自哪里或去哪里。这是控制器层的工作。
我并不是说你可能在视图中有网络代码是不可想象的(UIWebView出现在脑海中,但这几乎肯定是作为一个类的集合在内部实现的,包括控制器,只是将它自己呈现为一个UIView ),但你应该有一个非常好的理由,为什么这是最有意义的。
通过使用控制器,您可以减少您将自己绘制到道路下角的机会。
OK我可以直接从Controller访问AppDelegate吗?如果是,它是如何工作的? – user1200794 2012-02-09 22:48:52