View Controllerの.hファイルでNSMutableArray *categories
を宣言し、そのプロパティを宣言しました。
.mファイルのNSXMLParser
デリゲートのparser:foundCharacters:
メソッドには、次のコードがあります。
-(void)parser:(NSXMLParser *) parser foundCharacters:(NSString *)string
{
if (elementFound)
{
element = string;
[self.categories addObject:element];
}
}
しかし、デバッグモードでステップインした後、[self.categories addObject:element]
行にカーソルを合わせると、XCodeはサイズが0x0、0オブジェクトであることを通知します。 XMLファイルには3つの要素があるため、3つのアイテムが配列に含まれている必要があります。
私は本当に明白なものを見逃しており、何がわからない。
「0x0」の部分はメモリアドレスです。具体的には、「nil」は、可変配列が呼び出されたときに存在しないことを意味します。 -initメソッドで作成してみてください:
categories = [[NSMutableArray alloc] init];
-deallocでリリースすることを忘れないでください。
を使用して空の配列を初期化します
categories = [NSMutableArray array];
配列クラスのメソッドは自動解放されるため、解放する必要はありません。