我的应用里边有大量图片,而且图片很大,多个ViewController需要用到同一张图片。
我现在的做法是,每次都去创建一个UIImateView,我觉得这样很耗费内存,有没有办法多个ViewController共用一个UIImageView,可以减少内存消耗
图片很大应异步读入后用QuartzCore缩小图片尺寸再展示(读入和缩小可在子线程做,然后回主线程[imageView setImage:img]),并在内存警告时清空缓存。你的共享内存并不能解决根本问题。
这个怎么做,苹果有个官方demo:LargeImageDownsizing,请自行搜索。或者使用SDImageLoading等第三方库做这件事
iPhone的硬件设计是:屏幕尺寸的图片放在内存肯定够用。3GS这个值是刚刚够(空闲30M左右),4空闲可以到130M左右,4以后的设备使用内存还是很宽松的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。