searchBar:shouldChangeTextInRange:replacementText不叫

问题描述:

searchBar:shouldChangeTextInRange:replacementText从未调用过。该代表被定义,方法 - searchBarShouldBeginEditing:searchBarTextDidBeginEditing:工作正常,但shouldChangeTextInRange未被调用。我发现,当值存取在使用alertview后,我的方法尝试使用searchbar..the shouldChangeTextInRange叫...但在此之前没有searchBar:shouldChangeTextInRange:replacementText不叫

-(void) searchBarTextDidBeginEditing:(UISearchBar *)searchBar { 
    } 

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar 
{ 
return YES; 
} 

-(BOOL)searchBar:(UISearchBar *)searchBar shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 
{ 
return YES; 
} 


-(BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar { 
return YES; 
} 

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

    } 
+0

我做了一个测试,并把alertview视图中没有加载...钍searchBar工作...但我不想alertView:S – Ladessa

我的appDelegate,已经错过下面的代码applicationDidFinishLauching

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
[self.window makeKeyAndVisible]; 

现在的搜索栏工作正常!