我會爲你提供一個邏輯。 我建議你應該把所有的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索引值是相同的。賓果你得到選定的價值。
當你說「保留數組中的所有ABC值」時,即使這些值是來自XML API調用,也可以這樣做。 – hmthur 2010-12-11 06:53:58