(UIImage *)imageNamed
来源:互联网 发布:局域网网络硬盘服务器 编辑:程序博客网 时间:2024/05/17 22:54
这种方法在application bundle的顶层文件夹寻找名字的图象 , 如果找到图片, 系统缓存图象。图片内容被加载到系统内存中,使用时直接引用到系统内存。
所以当图片比较大时,程序使用的内存会迅速上升导致内存警告并退出。
特别在使用Interface Builder建立界面时,如果直接拖动UIImageView 并设置image的图片名称。InterfaceBuilder 正是通过UIImage 类的imageName方法加载图片。图片被缓存,导致内存使用较大。且无法释放,即使release掉 UIImageView也无济于事。
所以推荐使用+ (UIImage *)imageWithContentsOfFile:(NSString *)path方法加载图片。
也可以重载 imageNamed方法。
@implementation UIImage(imageNamed_Hack)
+ (UIImage *)imageNamed:(NSString *)name {
return [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@", [[NSBundle mainBundle] bundlePath], name ] ];
}
@end
Note: With this override you will not have any cache loading UIImages, if you need this,
you will have to implement your own cache.
Tip: If your applications use much image processing, consider to use de PhotoshopFramework
for iPhone. Check here: http://sourceforge.net/projects/photoshopframew/
- (UIImage *)imageNamed
- (UIImage *)imageNamed
- UIImage imageNamed 内存问题!!!
- UIImage imagenamed 用法好坏
- [UIImage imageNamed:@""]使用误区
- [UIImage imageNamed:@""]使用误区
- [UIImage imageNamed:@""]使用误区
- [UIImage imageNamed:@""]使用误区
- [UIImage imageNamed:@""]使用误区
- UIImage imageNamed格式要求
- ios开发UIImage imageNamed方法
- UIImage imageNamed的释放问题
- [UIImage imageNamed…] vs [UIImage imageWithData…]
- UIImage简谈:[UIImage imageNamed:]与 [UIImage imageWithContentsOfFile]的区别
- 关于 UIImage ImageNamed的内存释放。
- UIImage imageNamed引起的内存问题1
- UIImage imageNamed引起的内存问题2
- 逆向iOS SDK -- +[UIImage imageNamed:] 的实现
- WaitCommEvent function
- linux shell 逻辑运算符、逻辑表达式详解
- Android210 uboot 调试(好)
- Android异步操作UI界面的四种方法
- 屌丝男的暑假
- (UIImage *)imageNamed
- Android开发中处理图片OOM的若干方法小结
- RTP协议分析
- android 序列化传值
- asp.net内实现在密码输入框内按回车就登陆的功能
- 2012.8.21
- c++中BOOL和bool的区别
- Zend Framework教程-Zend_Application_Module-Zend Framework 多模块支持
- 编程工具集合