I have been having a long term issue with my app's memory increasing, so today have stripped my code back to basics but still have the same problem.
My retain counts remain constnact (2 for each MyImage[i] and 3 for "self"]. There are no memory leaks detected by Intruments, but it does report that the memory keeps increasing.
Can anyone point out anything I am not doing right? This issue has brought my development to a halt and I've not made any real progress for about three weeks as a result.
Code:
#import "TestView.h"
#import <QuartzCore/QuartzCore.h>
@interface TestView()
@property (nonatomic, retain) UIImageView *MyImage;
@end
@implementation TestView
@dynamic MyImage;
int NextImage = 1;
int PrevImage = 0;
int counter = 0;
- (id)initWithCoder:(NSCoder*)coder
{
if (self = [super initWithCoder:coder])
{
MyImage[1] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image1.png"]];
MyImage[2] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image2.png"]];
MyImage[3] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image3.png"]];
MyImage[4] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image4.png"]];
MyImage[5] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image5.png"]];
MyImage[6] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image6.png"]];
MyImage[7] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image7.png"]];
MyImage[8] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image8.png"]];
MyImage[9] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image9.png"]];
MyImage[10] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Image10.png"]];
for(int i = 1; i <= 10; i++)
{
[self addSubview:MyImage[i]];
MyImage[i].center = CGPointMake(999,999);
}
[NSTimer scheduledTimerWithTimeInterval:0.06 target:self selector:@selector(gameLoop) userInfo:nil repeats:YES];
}
return self;
}
- (void)gameLoop
{
counter = counter + 1;
if(counter > 10)
{counter = 1;}
switch(counter)
{
case 1: NextImage = 1; break;
case 2: NextImage = 2; break;
case 3: NextImage = 3; break;
case 4: NextImage = 4; break;
case 5: NextImage = 5; break;
case 6: NextImage = 6; break;
case 7: NextImage = 7; break;
case 8: NextImage = 8; break;
case 9: NextImage = 9; break;
case 10: NextImage = 10; break;
}
UIImageView *imageView = MyImage[PrevImage];
imageView.center = CGPointMake(999,999);
UIImageView *imageView2 = MyImage[NextImage];
imageView2.center = CGPointMake(160,240);
PrevImage = NextImage;
}
- (void)dealloc
{
[MyImage[50] release];
[super dealloc];
}
@end
Thanks in advance,
Nathan