iPhone UISearchBar示例

时间:2010-12-10 12:44:49

标签: objective-c

我正在尝试在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搜索的示例的参考。

2 个答案:

答案 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)

  

引用:我还想存储用户选择的值(显示给他的值)

对于这部分,我建议使用NSUserDefaults

使用API​​时,您可能需要查看this example

祝你好运..