按取消后uisearchbar崩溃

时间:2014-06-28 20:09:39

标签: ios cocoa-touch cocoa nsarray uisearchbar

我的filteredContentForSearchText在用户在iOS中的搜索栏上按下取消后忽略谓词。

我使用以下方法过滤带有uisearchbar的数组:

#pragma mark Content Filtering
-(void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope {


    [self.filteredUsersArray removeAllObjects];
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.fullName contains[c] %@",searchText];
    self.filteredUsersArray = [NSMutableArray arrayWithArray:[self.usersArray filteredArrayUsingPredicate:predicate]];

    if ([self.filteredUsersArray count] > 0) { 

    }else{
        User *tempUser = self.addedUsersArray[0];
        tempUser.fullName = [NSString stringWithFormat:@"Search for '%@'", searchText];

        [self.filteredUsersArray addObject:tempUser];

    }
}

在用户按下取消或清除搜索之前,一切都很完美。在该操作发生后,此行不再匹配并填充数组:

self.filteredUsersArray = [NSMutableArray arrayWithArray:[self.usersArray filteredArrayUsingPredicate:predicate]];

有人知道为什么即使条件匹配,在按下取消后数组也会返回零?

0 个答案:

没有答案