0

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

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

にはオブジェクトが 1 つしかなくarray、tableView の行数を 内のオブジェクトの数と同じにしたいのですがarray objectAtIndex:0、数を取得できません。私が試してみました:

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

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

4

2 に答える 2

0

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

[self.myArray addObject: array];

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

[self.myArray addObjectsFromArray:array];

の内容を に追加してarrayいましたが、それ自体を にself.myArray追加していませんでした。arrayself.myArray

于 2013-10-10T20:49:45.243 に答える
0

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

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

つまり、次の[array objectAtIndex:0]ようになります。[self.myArray lastObject:]

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

于 2009-11-27T05:31:56.537 に答える