2012-01-04 70 views
0

我想在uitextfield文本改变时调用web api。问题是,如果我键入文本快速前“abcd”它调用api四次。我想处理api调用,如果我然后输入api,然后用孔串来调用api。如果我输入缓慢,那么它就ok了。通常我们输入fast,然后它会多次调用api它的一个问题。UITextfield编辑修改事件句柄问题

任何一个有此

- (IBAction)editTextField:(id)sender { 

     [self callapiwithtype_text]; 

} 

回答

0

你可以尝试创建一个操作队列,只允许一个单一的操作同时执行的想法。当你的动作触发时,让它取消任何正在执行的操作,并创建并执行一个新的操作。这样,只有“最后”操作才会被激活,只有最后的请求才会返回结果。

另一种选择是在事件触发和调用API之间添加延迟。如果在延迟结束之前收到另一个事件,请不要发送请求。