NSArray objectAtIndex: 0 - obter contam?
-
05-07-2019 - |
Pergunta
Eu tenho um NSArray que eu passar em através de um método delegado:
- (void)didFinishParsing:(NSArray *)array {
[self.myArray addObjectsFromArray:array];
NSLog(@"%@", self.myArray);
[self.tableView reloadData];
}
Há apenas um objeto no array
e eu gostaria que a contagem de linhas tableView para igualar a quantidade de objetos no array objectAtIndex:0
, mas eu não posso começar a contagem. Eu tentei:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [[self.myArray objextAtIndex:0] count];
}
Como faço para obter o número de objeto dentro do primeiro objeto (e única) na minha matriz?
Solução
Para contar a matriz no índice 0 de self.myArray sua sintaxe está correta. É a sua configuração variável array
como você pensa que é?
O addObjectsFromArray:
chamada de método irá adicionar o conteúdo de array
para o final do self.myArray
.
Assim, em outras palavras: [array objectAtIndex:0]
se tornará [self.myArray lastObject:]
Se você está tendo problemas para executar count:
em [self.myArray objectAtIndex:0]
ou [self.myArray lastObject]
então o objeto que você está tentando contar poderia ser nil
, vazio, não um NSArray / Definir como você está esperando que ele seja.
Outras dicas
Se você está tentando criar uma matriz dentro de uma matriz você deve usar
[self.myArray addObject: array];
Isto irá adicionar a matriz na próxima índice dentro self.myArray. O que você estava fazendo anteriormente com
[self.myArray addObjectsFromArray:array];
foi adicionando o conteúdo do array
em self.myArray
não adicionando-se array
em self.myArray
.