为了账号安全,请及时绑定邮箱和手机立即绑定

有没有其他比较好的办法或者优化方案来实现播放完整动画而又不会出现这样内存占用太多崩溃的情况呢?

有没有其他比较好的办法或者优化方案来实现播放完整动画而又不会出现这样内存占用太多崩溃的情况呢?

iOS
精慕HU 2023-04-15 18:14:22
我有一组序列帧,想用UIImageView来做成动画。我的代码如下UIImageView* campFireView = [[UIImageView alloc] initWithFrame:self.view.frame];                 NSMutableArray *moviesSourceArray = [NSMutableArray arrayWithCapacity:200];        int i = 1;                 for (i = 1; i <= 100; i++) {            NSString *imageName;             imageName = [NSString stringWithFormat:@"image%i.png",i];             [moviesSourceArray addObject:[UIImage imageNamed:imageName]];         }                          campFireView.animationImages = moviesSourceArray;                  campFireView.animationDuration = 1.75;                  campFireView.animationRepeatCount = 0;                  [campFireView startAnimating];                  [controller.view addSubview:campFireView];         [campFireView release];我的序列帧图片比较多,一共40M的样子,200张。如果全部图片都加入进来播放的话就会崩溃,减少到100张能正常运行。
查看完整描述

2 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

果断存成mov,用个视频view播放啊

别说40M。10M图片在iOS6上让你崩不是啥难事。


查看完整回答
反对 回复 2023-04-18
?
隔江千里

TA贡献1906条经验 获得超10个赞

试试不要使用 [UIImage imageNamed:imageName] 这个方法类得到图片,使用

NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"png"];
[UIImage imageWithContentsOfFile:path];

再试试看,具体原因,应该就是缓存的问题,你再搜索搜索就全明白了。


查看完整回答
反对 回复 2023-04-18
  • 2 回答
  • 0 关注
  • 127 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信