gpt4 book ai didi

iphone - iOS - UIImageView 动画内存泄漏?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:47:17 26 4
gpt4 key购买 nike

我目前正在使用 UIImageView 根据用户按下的按钮为一系列图像制作动画。我在 NSArrays 中创建了大约 5 组不同的图像,例如:

-(void)initiateAnimations {

punchani = [NSArray arrayWithObjects:
[UIImage imageNamed:@"punch0001.png"],
[UIImage imageNamed:@"punch0002.png"],
[UIImage imageNamed:@"punch0003.png"],
[UIImage imageNamed:@"punch0004.png"],
[UIImage imageNamed:@"punch0005.png"],
[UIImage imageNamed:@"punch0006.png"],
[UIImage imageNamed:@"punch0007.png"],
[UIImage imageNamed:@"punch0008.png"],
[UIImage imageNamed:@"punch0009.png"],
[UIImage imageNamed:@"punch0010.png"],
[UIImage imageNamed:@"punch0011.png"],
[UIImage imageNamed:@"punch0012.png"],nil];
}

然后我使用标准动画代码将它们循环一次:

player.animationImages = punchani;
player.animationDuration = 0.50;
player.animationRepeatCount = 1;
[player startAnimating];

但是,随着我将越来越多/不同的图像加载到 UIImageView 中,我最终得到如下内存警告输出:(用“appname”替换我的实际可执行文件)

 2013-03-15 20:52:23.065 AppName[2080:907] Received memory warning.

我知道这可能会发生,但 ARC 禁止我发布阵列。我该如何解决这个漏洞?谢谢

最佳答案

UIImage imageNamed:缓存图像并按自己的时间表释放内存。采用 + (UIImage *)imageWithContentsOfFile:(NSString *)path直接加载内存

Try this answer as well.动画结束时移除图像数组

关于iphone - iOS - UIImageView 动画内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15445372/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com