首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >UISearchBar检测用户何时停止输入并不立即搜索,因此检测暂停

UISearchBar检测用户何时停止输入并不立即搜索,因此检测暂停
EN

Stack Overflow用户
提问于 2012-03-10 08:26:07
回答 1查看 11.9K关注 0票数 17

我正在搜索实现一个从url检索信息的UISearchbar,并使用默认方法:

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

当文本改变时,我可以立即检测到,并执行url的获取,但在这种方式下,文本类型很慢,因为iPhone正在搜索url,所以我希望在用户停止写入某一秒时开始获取url,因此我希望检测键入的暂停,以刷新表视图,通过url检索信息。我找到了这个请求的一个更老的帖子,我尝试了一个对我来说不起作用的解决方案:

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(request:)     object:searchText];

    //.....

    [self performSelector:@selector(request:) withObject:searchText afterDelay:1.5];
}

-(void)request:(NSString *)myString
{
    NSLog(@"%@",myString);
}

这样,当我输入的时候,request方法不会被调用,但是当我停止输入的时候,我输入的每个字符都会调用它,那么默认的方法是一样的吗,我错了吗?或者是实现不正确?

EN

回答 1

Stack Overflow用户

发布于 2012-03-10 08:28:31

将这一行:[self performSelector:@selector(request:) withObject:searchText afterDelay:1.5];移出您的textDidChange方法,并将其放入文本中,开始编辑方法:- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9642762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档