我现在有问题。我想使用wikimeta获取维基百科数据。我用NSString方法获取数据(stringWithContentsOfURL:encoding:error :)。但是,有时当连接速度很慢时,我想取消获取URL数据的过程。但是,当我使用该方法时,我无法停止该过程,因为我们无法检测到任何触摸按钮或UIView。任何人都可以帮助我解决我的问题?任何从URL获取数据并在UITextView中设置它的方法,以便我们可以在UITextView中查看数据。
Thanx之前。问候。
答案 0 :(得分:0)
如果我正确理解您的问题,那么您不能按下按钮,因为您在主线程上执行网络连接,这会导致UI冻结。
正确的方法是在后台线程上执行长操作,并且只对主线程执行UI操作。
NSURLConnection提供了异步方法,允许您在后台线程上轻松执行从服务器实际获取数据。 您可以在NSURLConnection Class Reference
上了解如何使用这些方法但是,多线程的概念非常重要,我强烈建议您在开始使用异步方法之前先阅读一下。
您可以阅读apple documentation
的完整指南在您学习了基本概念后,我建议您阅读this tutorial。它使用了ASIHTTPRequest,这对初学者来说太过分了,但我认为对线程概念的解释非常好。