我正在尝试在iPhone中实现搜索栏(UISearchBar)。基本上它会根据API结果搜索公司名称。 因此,如果用户输入ABC,则应立即显示ABC 1,ABC 2,ABC 3 ......
这些结果ABC 1,ABC 2,ABC 3 ......实际上来自API调用(http://xyz.com/?companyname=ABC)
它应该在用户输入时更新。如果他现在进入ABC 2,它应该只显示
ABC 2而不是其他人。
我还想存储用户选择的值(显示给他的值)
有人可以向我提供任何针对API搜索的示例的参考。
答案 0 :(得分:4)
我会为你提供一个逻辑。 我建议你应该把所有ABC值都保存在一个数组中。 对于搜索栏中的每个键输入,将调用此委托
-(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
NSString *firstLetter = @"";
NSInteger strlen=[searchText length];
for (NSString *ABCValue in ABCArray)
{
if(ABCValue.length >= stringlen)
firstLetter = [buildName substringToIndex:stringlen];
if([searchText.uppercaseString isEqualToString:firstLetter.uppercaseString])
{
[tableArray addObject:ABCValue]; //Store it in NSMutableArray
break;
}
}
[tableView reloadData];
}
在didSelectRowAtIndexPath中,当用户选择具有ABC结果的单元格时,indexPath.row值和tableArray索引值相同。 Bingo你得到选定的值。
答案 1 :(得分:0)