iPad 만 애니메이션이있는 앱을 개발 중입니다. 애니메이션을 만들기 위해 약 400 개의 JPEG 이미지를 사용하고 있습니다. 크기는 7MB에 해당합니다. 하지만 애니메이션이 멈추고 50 개의 이미지에 애니메이션을 적용한 후 앱이 다운됩니다. NIB에서 UIImageView를 IBOutlet으로 사용하고 NSTimer를 사용하여 코드의 이미지를 변경합니다. 응용 프로그램이 메모리 수신 경고 메시지를 표시하는 데 실패합니다. 나는 Instruments 도구를 사용하여 점검했고 아무 누출도 발견하지 못했습니다.iPad에서받은 메모리 경고
모든 의견을 환영합니다.
당신이 특정 시간 동안 이미지를 변경하기위한 여러 개의 타이머를 사용하고
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self callTimer];
}
-(void) callTimer
{
tempView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];
[self.view addSubview:tempView];
animationTimer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(animateCharacter) userInfo:nil repeats:YES];
}
-(void) animateCharacter
{
imageNumber++;
if(imageNumber <= 400)
{
tempView.image = [UIImage imageNamed:[NSString stringWithFormat:@"body%d.jpg",imageNumber]];
}
else
{
//tempView.image = [UIImage imageNamed:[NSString stringWithFormat:@"pose.png",imageNumber]];
imageNumber = 0;
tempImageNumber = 0;
[tempView removeFromSuperview];
[tempView release];
tempView = nil;
[animationTimer invalidate];
animationTimer = nil;
}
}
무한 시간의 이미지 뷰를 추가하여 문제가 생길 수 있음을 의미합니다. 이미지를 이미지보기로 변경할 수 있습니다. 문제가 해결 될 수 있으므로 –