NSArray ObjectAtIndex: 0 - erhalten zählen?
-
05-07-2019 - |
Frage
Ich habe eine NSArray, dass ich in über eine Delegaten-Methode übergeben:
- (void)didFinishParsing:(NSArray *)array {
[self.myArray addObjectsFromArray:array];
NSLog(@"%@", self.myArray);
[self.tableView reloadData];
}
Es gibt nur ein Objekt in den array
und ich würde die Tableview Reihe mag zählt die Anzahl der Objekte in den array objectAtIndex:0
gleichen, aber ich kann nicht die Zählung erhalten. Ich habe versucht:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [[self.myArray objextAtIndex:0] count];
}
Wie kann ich die Anzahl des Objekts innerhalb des ersten (und einzigen) Objekts in meinem Array?
Lösung
Um das Array bei Index 0 von self.myArray zählen Sie Ihre Syntax korrekt ist. Ist Ihr array
variable Setup, wie Sie denken, es ist?
Der Methodenaufruf addObjectsFromArray:
wird der Inhalt von array
bis Ende self.myArray
hinzuzufügen.
Also mit anderen Worten: [array objectAtIndex:0]
wird [self.myArray lastObject:]
werden
Wenn Sie Probleme haben, laufen count:
auf [self.myArray objectAtIndex:0]
oder [self.myArray lastObject]
dann das Objekt Sie versuchen nil
, leer, zu zählen, könnte nicht ein NSArray / Set, wie Sie erwarten, es zu sein.
Andere Tipps
Wenn Sie versuchen, ein Array innerhalb eines Arrays erstellen Sie stattdessen verwenden sollten
[self.myArray addObject: array];
Dies wird das Array an dem nächsten Index innerhalb self.myArray hinzuzufügen. Was Sie waren zuvor mit dem Tun
[self.myArray addObjectsFromArray:array];
wurde hinzugefügt um den Inhalt von array
in self.myArray
nicht das Hinzufügen array
selbst in self.myArray
.