0

我添加了一个带有 UITableView 的搜索栏。当我输入第一个字符时,它会搜索以该字符开头的所有记录,但是当我输入下一个字符时,它什么也不搜索。

请帮助我。如果这是一个愚蠢的问题,请耐心指导我谢谢

代码

-(void)searchData:(NSString*)search{

//    search = [search uppercaseString];

    NSLog(@"Array count233 : %d", [menuArray count]);



    NSLog(@"Array count237 : %d", [menuArray count]);

    NSLog(@"Search String : %@", search);
    if ([search isEqualToString:@""]) {

    }
    else {

        [tableMenuArray removeAllObjects];

            for (int i = 0; i < [menuArray count]; i++) {
                if ([[[menuArray objectAtIndex:i] itemName] hasPrefix:search]) {
                    [tableMenuArray addObject:[menuArray objectAtIndex:i]];
                    NSLog(@"Found");
                }
            }
        }
    [menuTableView reloadData];
}
4

1 回答 1

0

如果您取消注释第二行,则更改此行 -

if ([[[menuArray objectAtIndex:i] itemName] hasPrefix:search])

...到 -

if ([[[[menuArray objectAtIndex:i] itemName] uppercaseString] hasPrefix:search])

否则,您将全大写与正常大小写的单词进行比较。希望这对您有所帮助!

于 2012-04-14T19:22:44.427 回答