1、UIImage 的 2 种加载图片方式
(1)有缓存(图片所占用的内存会一直停留在程序中),可能会导致占用大量内存而使程序崩溃,加载少量 小图片时候使用。
+ (UIImage *)imageNamed:(NSString *)name;
name 是图片的文件名,png 图片不用加后缀名,jpg 等其他图片格式要加后缀名。
(2)无缓存(图片所占用的内存会在一些特定操作后被清除),在加载大量图片时候使用
+ (UIImage *)imageWithContentsOfFile:(NSString *)path
- (id)initWithContentsOfFile:(NSString *)path;
path 是图片的全路径
例如:
NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle pathForResource:filename ofType:nil];
UIImage *image = [UIImage imageWithContentsOfFile:path];
2、设置 UIImageVeiw 圆角
self.iconView.layer.cornerRadius = 8;//圆角半径
self.iconView.clipsToBounds = YES;//超出圆角部分都减掉
【备注】UIImageView 还可以设置高亮(被点击)图片:
myImageView.highlightedImage = ...
3、UIImageView 帧动画相关属性和方法
@property(nonatomic,copy) NSArray *animationImages;
需要播放的序列帧图片数组(里面都是 UIImage 对象, 会按顺序显示里面的图片)
@property(nonatomic) NSTimeInterval animationDuration;
帧动画的持续时间
@property(nonatomic) NSInteger animationRepeatCount;
帧动画的执行次数(默认是无限循环)
- (void)startAnimating; // 开始执行帧动画
- (void)stopAnimating; // 停止执行帧动画
- (BOOL)isAnimating; // 是否正在执行帧动画
示例:
在UIView中加载一张图片
- (void)viewDidLoad
{
[super viewDidLoad];
// 设置图片View
UIImageView *imageView = [[UIImageView alloc] init];
imageView.frame = self.view.frame;
// 加载图片
imageView.image = [UIImage imageNamed:@"myImage.jpg"];
[self.view addSubview:imageView];
}
效果:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。