1

我正在尝试确定如何将UISearchBar呼叫延迟textDidChange到几毫秒过去。我的目标是将多个键盘条目聚合到一个远程 Web 服务调用中。正如我现在拥有的那样,我每次击键都会调用服务器,这太过分了。

如果在其中一个UISearchBarDelegate 方法中没有某种方法...是否有其他方法可以实现相同的目标...即在用户暂停输入密钥之前不要调用服务器?

我一直在使用这个委托方法:

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText 
4

1 回答 1

5

是的,您可以使用 NSTimer。

做这个:

  1. 创建一个调用远程 Web 服务调用的 NSTimer,并在用户开始输入时运行它。
  2. 每次用户输入一个键时,都会重置计时器并重新开始。
  3. 如果用户停止输入,NSTimer 将触发您的 Web 服务调用。
于 2010-03-18T17:22:01.943 回答