如何从Web获取数据并将其插入到UITextView中?
我现在有问题。我想使用维基元获取维基百科数据。我使用 NSString 方法获取数据 (stringWithContentsOfURL:encoding:error:)。但是,有时当连接非常慢时,我想取消获取 URL 数据的过程。但是,当我使用该方法时,我无法停止该过程,因为我们无法检测到对按钮或 UIView 的任何触摸。任何人都可以帮助我解决我的问题吗?任何从 URL 获取数据并将其设置在 UITextView 中的方法,以便我们可以在 UITextView 中查看数据。
谢谢之前。问候。
I have a problem now. I want to get wikipedia data using wikimeta. I get the data with NSString methode (stringWithContentsOfURL:encoding:error:). But, sometime when the connection wa really slow, i want to cancel the process of getting URL data. But, when i use that methode, i can't to stop the process because we can't detect any touch to button or to UIView. Anyone can help me to resolf my problem? Any way to get data from URL and set it in UITextView so we can look the data in UITextView.
Thanx before. regards.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果我正确理解您的问题,那么您无法按下按钮,因为您在主线程上执行网络连接,这会导致 UI 冻结。
正确的方法是在后台线程上执行长操作,而只在主线程上执行 UI 操作。
NSURLConnection 提供了异步方法,使您可以轻松地在后台线程上从服务器实际获取数据。
您可以在 NSURLConnection 类参考
然而,多线程的概念非常重要,我强烈建议您在开始使用异步方法之前阅读一些相关内容。
您可以阅读 Apple 文档的完整指南
在您学习了基本概念后,我鼓励您阅读本教程。它使用 ASIHTTPRequest,这对于初学者来说有点大材小用,但我认为其中对线程概念的解释非常非常好。
If I understand your problem correctly, than you can't press buttons because you perform the network connection on the main thread and this causes the UI to freeze.
The correct way is to perform long actions on a background thread, and only perform UI operations on the main thread.
NSURLConnection provides asynchronous methods that allow you to easily perform the actual fetching of data from the server on a background thread.
You can read about how to use those methods on NSURLConnection Class Reference
However, the concept of multithreading is extremely important and i would highly recommend that you read a little about it before starting to use asynchronous methods.
You can read a complete guide on the apple documentation
After you learn the basic concepts, i encourage you to read this tutorial. It uses ASIHTTPRequest which is an overkill for beginners, but the explanation of threading concepts there is very very good in my opinion.