xcode UIImageView创建、图片加载、 音频文件播放、 延迟调用

时间:2022-02-01 04:16:07

代码创建

/**

创建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可以是任意对象