0

我的应用程序在 ARC 中。
在我的应用程序的任何视图中,都有一个背景图像,并且在该图像上,一些动画不断重复这些图像。

问题是:我的应用程序在一段时间后进入后台。

我在堆栈、谷歌和苹果文档上看到并尝试了很多东西,但没有得到令人满意的解决方案。
我有三个问题。
(1)如何阻止这种情况?
(2) ARC有没有其他方法可以手动释放内存。
(3) 如果我使用 [self.view removeFromSuperview]; 对于 UIView 那么还有一些内存没有在 ARC 中释放?

动画的 MyCode 是

imageview = [[UIImageView alloc] init];
imageview.image = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy08" ofType:@"png"]];
[self.view addSubview:imgBubbleAnimation];

imageview.animationImages = [NSArray arrayWithObjects:
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy01" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy02" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy03" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy04" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy05" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy06" ofType:@"png"]],
                                      [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluecandy07" ofType:@"png"]],
                                      nil];
[imageview setAnimationRepeatCount:0]; // 0 for continuous
imageview.animationDuration =3.0;
[imageview startAnimating];

和声音文件(点击特定按钮时播放)

URL = [NSURL fileURLWithPath: [[NSBundle mainBundle]
                                 pathForResource:@"ect1a" ofType:@"mp3"]];
audioSound = [[AVAudioPlayer alloc] initWithContentsOfURL:URL error:nil];
audioSound.delegate = self;
audioSound.volume = 5.0;
audioSound.numberOfLoops = 0;
[audioSound play];

我有一个视图的 15 个小声音文件和一个视图的 15 个动画。
在每个特定的动画中,至少有 15 张图像。
欢迎任何帮助、建议、链接或教程。

4

1 回答 1

0

您真的是指背景还是设备进入睡眠/空闲状态(关闭屏幕)?

如果要闲置,请尝试

[[UIApplication sharedApplication] setIdleTimerDisabled:YES];

当你的动画开始时。动画完成后,您应该再次将其设置为关闭 (NO)。

于 2013-04-18T11:19:55.617 回答