【发布时间】:2013-03-13 04:09:41
【问题描述】:
我调用了一个 Web 服务方法来插入一些数据并将一些图像上传到 Web url。 它工作正常,但按钮一直按下直到方法执行。我在这里使用了线程概念并创建了另一个线程并执行该操作,但该线程没有将我带回主线程。
请告诉我这样做的适当方式是什么。
【问题讨论】:
标签: iphone ios multithreading web-services button
我调用了一个 Web 服务方法来插入一些数据并将一些图像上传到 Web url。 它工作正常,但按钮一直按下直到方法执行。我在这里使用了线程概念并创建了另一个线程并执行该操作,但该线程没有将我带回主线程。
请告诉我这样做的适当方式是什么。
【问题讨论】:
标签: iphone ios multithreading web-services button
Web 服务调用机制放在一个单独的方法中,并使用 performSelector:withObject:andDelay () 方法从按钮的 IBAction 调用该方法。这将解决您的问题。
【讨论】:
创建另一个函数,您可以在其中放置 web 服务调用的代码,以便解决您的按钮按下问题。
【讨论】:
您也可以使用GCD 实现此功能。
- (IBAction)buttonPress:(id)sender
{
dispatch_async(dispatch_get_global_queue(0,0), ^{
//place your web service code here
});
}
【讨论】: