代码创建
/**
创建UIImageView
*/
UIImageView * imageView=[[UIImageView alloc]init];
/**
设置尺寸位置
*/
imageView.frame=(CGRect){{50,50},{230,230}};
/**
创建图片
*/
UIImage * image=[[UIImage alloc]init];
/**
获取图片
*/
image=[UIImage imageNamed:@"图片名称"];
/**
把图片给容器
*/
imageView.image=image;
/**
->带有scale单词的 <图片有可能被拉伸>
UIViewContentModeScaleToFill
//将图片拉伸填充整个imageView
//图片显示的尺寸跟imageView的尺寸是一样的
->带有scale单词的,并且带有aspect单词的:可能会被拉伸,但是会保持图片原来的宽高比
UIViewContentModeScaleAspectFit
//保证刚好能看到图片的全部
UIViewContentModeScaleAspectFill
//拉伸至图片的宽度或者高度跟imageView一样
->不带有scale的单词<图片绝对不会被拉伸>,保持图片原来的宽度和高度
*/
imageView.contentMode=UIViewContentModeScaleAspectFit;
/**
超出部分被剪裁
*/
imageView.clipsToBounds=YES;
[self.view addSubview:imageView];
图片加载
- 没有缓存
NSString *file = [[NSBundle mainBundle] pathForResource:@"图片名" ofType:@"图片扩展名"];
UIImage *image = [UIImage imageWithContentOfFile:file];
*只要方法名带有file的,都是传全路径
使用场合:图片比较大,使用频率比较低
建议:不需要缓存的图片不能放在Images.xcassets中
- 有缓存
UIImage *image =[UIImage imageNamed:@"图片名"];
使用场合:图片比较小、使用频率比较高
建议:把需要缓存的图片放到Images.xcassets
音频文件播放
// 创建一个音频文件的URL(URL就是文件的路径对象)
NSURL *url = [[NSBundle mainBundle] URLForResource:@"音频文件名" withExtention:@“音频文件扩展名”];
-- 另一写法
NSURL *url = [[NSBundle mainBundle] URLForResource:@"音频文件名.音频文件扩展名" withExtention:nil];
// 创建播放器
self.palyer = [AVPlayer playerWithURL:url];
[self.player play];
延迟调用方法
[objc performSelector:@selector(stand:) withObject:@"123" afterDelay:10];
// 10秒后调用objc的stand:方法,并且传递@“123”参数
// withObject可以是任意对象