在按下搜索栏时,我想获取已经输入的字符串。为此,我目前正在使用这种方法:
- (BOOL)searchBar:(UISearchBar *)searchBar shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
NSLog(@"String:%@",mainSearchBar.text);
return YES;
}
但它返回的是之前的字符串。例如 id 我输入“jumbo”,它显示 jumb,当我按退格键删除一个项目并使其成为“jumb”时,它显示 jumbo。即搜索栏上的前一个字符串。
如何获取当前字符串?请帮助。 谢谢
最佳答案
在获取输入文本的方法中:
NSString* newText = [searchBar.text stringByReplacingCharactersInRange:range withString:text]
swift 3:
let newText = (searchBar.text ?? "" as NSString).replacingCharacters(in: range, with: text)
关于iphone - 如何在输入时获取搜索栏的当前字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10161833/