ios内存管理 - IOS真机测试的时候控制台一直提示内存警告,就是那一串memory warning英文,怎么解决。
黄舟
黄舟 2017-04-17 13:34:21
[iOS讨论组]

IOS真机测试的时候控制台一直提示内存警告,就是那一串memory warning英文,怎么解决。

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
PHP中文网

看一看左边栏的debug navigator那儿,memory有多高。

如果真的很高,那可能要注意下了。是不是有循环里内存泄露的情况,是不是有过大的图片之类。可以用instrument配合调试。

补充:

图片是网络请求加载的,这个怎么减小图片的大小呢

服务器端可以减小图片的大小。

还有里面开启了一个定时器,但是我没有给对象它,直接开启,然后因为没有对象,所以也没关闭它,定时器主要是scrollview的滑动用到,我开启的是这样【nstimet sch....】这样的,没有给对象,我觉得这样影响不大吧

定时器NSTimerretain target,直到invalidate才会释放。如果你不把它作为对象保存,它就不会释放target,会造成内存泄露。正确的做法是把 timer 保存起来里,然后在用完后或dealloc里释放掉。

- (void)dealloc {
    [self.timer invalidate];
    self.timer = nil;
}

还有我是cell上面直接自定义一个uiview然后uiview上又自定义一个通用的uiview,在最后的uiview上添加控件,这样会不会也是引起内存警告的原因呢。

这样不会有任何问题。前提是正确重用了 cell,取出重用的 cell 后不要重复添加那些 view。

还有一个问题想请问你的,就是视频播放MPMoview...那个类,它有通知可以监听当前实时播放时间吗??

MPMoview 是啥?你是说MPMoviePlayerController吗?有个属性currentPlaybackTime可以获取播放时间。
没有监听方法,也无法添加 KVO。一般的做法是添加一个 Timer,在 Timer 的回调方法里调这个属性看播放进度。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号