質問

デリゲートメソッドを介して渡すNSArrayがあります:

- (void)didFinishParsing:(NSArray *)array {
    [self.myArray addObjectsFromArray:array];
    NSLog(@"%@", self.myArray);
    [self.tableView reloadData];
}

array にはオブジェクトが1つしかなく、tableViewの行カウントを array objectAtIndex:0 のオブジェクトの量に等しくしたいのですが、取得できませんカウント。試しました:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [[self.myArray objextAtIndex:0] count];
}

配列の最初の(そして唯一の)オブジェクト内のオブジェクトの数を取得するにはどうすればよいですか?

役に立ちましたか?

解決

self.myArrayのインデックス0の配列をカウントするには、構文は正しいです。あなたの array 変数の設定はどうですか?

メソッド呼び出し addObjectsFromArray:は、 array の内容を self.myArray の最後に追加します。

つまり、 [array objectAtIndex:0] [self.myArray lastObject:]

になります

[self.myArray objectAtIndex:0] または [self.myArray lastObject] count:の実行に問題がある場合カウントしようとしているオブジェクトは、 nil で、NSArray / Setではなく、空である可能性があります。

他のヒント

配列内に配列を作成しようとしている場合は、代わりに使用する必要があります

[self.myArray addObject: array];

これにより、self.myArray内の次のインデックスに配列が追加されます。以前

でやっていたこと
[self.myArray addObjectsFromArray:array];

array の内容を self.myArray に追加し、 array 自体を self.myArray に追加しませんでした。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top