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

2行目のコメントを外す場合は、この行を変更してください-

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

...に -

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

それ以外の場合は、大文字と小文字をすべて比較しています。これがあなたのためにそれを分類することを願っています!

于 2012-04-14T19:22:44.427 に答える