我正在尝试使用数组来跟踪我的精灵,将它们添加和移除到层中,最后清除掉数组中的精灵。
我正在使用以下代码:
Sprite * Trees[50];
Layer * Forest;
Forest = [Layer node];
Forest.isTouchEnabled = YES;
[self addChild:Forest z:30];
// do this a bunch of times
Trees[0] = [[Sprite spriteWithFile:@"mytree.png"] retain];
[Trees[0] setPosition:cpv(240,160)];
[Forest addChild:Trees[0] z:5];
当我想要销毁一棵树时,我使用:
[Forest removeChild:Trees[0] cleanup:YES];
[Trees[0] release];
我的问题是,当我在Instruments中查看时,我从未回收过那些内存,它们从未降下来。我以为通过释放精灵,它会释放内存。我做错了吗?