使用 ASIHTTPREQUEST 库发送同步请求,在 iPhone 中显示活动指示器
我想在从服务器发送和接收同步 asihttprequest 时显示活动指示器。我在发送 asihttprequest 时使用了活动指示器,但由于同步请求,它没有在 iPhone 中显示。
关于如何在同步数据传输期间显示活动指示器的任何建议。
谢谢
I want to show activity indicator while sending and receiving synchronous asihttprequest from server. I have used activity indicator as the asihttprequest is send but it did not showing in iPhone due to synchronous request.
Any suggestion how to show activity indicator during synchronous data transfer.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
同步请求在主线程上调用您的活动指示器委托方法
setProgress:
。B/c 您在主线程上使用
ASIHTTPRequest
会阻塞 UI,因此对setProgress
: 的调用正在排队等待请求完成后分派,但到此为止当进度已经是 100% 时在后台线程上调用同步请求
要解决此问题,请使用异步请求或使用Edit
请记住创建您自己的自动释放池来处理 startSynchronous: 方法内的内存
Synchronous request calls your activity indicator delegate method
setProgress:
on the main thread.B/c you are using
ASIHTTPRequest
on the main thread you are blocking the UI, hence calls tosetProgress
: are queuing to be dispatched after the request is finished, but by that time the progress is already 100%To solve this use either asynchronous request or call synchronous request on a background thread using
Edit
Remember to create your own autorelease pool to handle the memory inside your startSynchronous: method