Usando NSPredicate em matrizes 2D
Esta pergunta é baseada no mesmo aplicativo / fonte da minha pergunta anterior, que pode ser encontrada aqui:
Como gerenciar a memória usando classes no Objective-C?
Eu tenho uma matriz aninhada que se parece com isso quando impressa (eu apenas copiei e colei uma breve parte dela).
(
(
<Term: 0x4256420>,
<Term: 0x420fa40>,
<Term: 0x4257bd0>,
<Term: 0x4257cf0>,
<Term: 0x4257d90>,
<Term: 0x4257e30>
),
(
<Term: 0x4257e50>,
<Term: 0x4257f90>,
<Term: 0x4257fb0>,
<Term: 0x42580e0>,
<Term: 0x4258170>,
<Term: 0x4258210>,
<Term: 0x4258230>,
<Term: 0x4258360>,
<Term: 0x4258400>,
<Term: 0x42584a0>,
<Term: 0x4258540>,
<Term: 0x42585e0>,
<Term: 0x4258670>,
<Term: 0x4258710>
),
E aqui está o meu código para a parte de pesquisa da minha tabela:
- (NSInteger)tableView:(UITableView *)aTableView numberOfRowsInSection:(NSInteger)section
{
// Normal table
if (aTableView == self.tableView) return [[self.sectionArray objectAtIndex:section] count];
// Search table
//NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name contains[cd] %@", self.searchBar.text];
//self.filteredArray = [self.crayonColors filteredArrayUsingPredicate:predicate];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name contains[cd] %@", self.searchBar.text];
self.filteredArray = [[self.sectionArray objectAtIndex:section] filteredArrayUsingPredicate:predicate];
return self.filteredArray.count;
}
Estou recebendo o erro de que não posso alocar espaço suficiente, o que significa que devo estar fazendo algo errado, simplesmente não consigo descobrir o que.
A parte comentada da parte de pesquisa no método acima funciona, mas crayonColors é apenas um simples NSMutableDictionary de NSStrings e não possui matrizes aninhadas dentro dela.
Desde já, obrigado!