UIImageView

  • UIImageView:UIView UIView的所有属性和方法UIImageView都拥有
  • UIImageView专门用来显示图片的控件

目录

  • UIImage图片类
  • 设置内容模式(UIImageView上图片的比例)
  • 设置帧动画

1.创建一个UIImageView对象

UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];

2.设置背景颜色

imageView.backgroundColor = [UIColor redColor];

UIImage图片类

  • 根据图片名创建图片(前提是图片已经添加到工程中),拖到工程中的图片,实质是当前这个应用程序的安装包里面
  • 参数:图片的名字(如果图片是png图片,那么图片名的后缀可以省略;如果是其他格式,后缀名必须加上)
+ (UIImage *)imageNamed:(NSString *)name;
    UIImage * image = [UIImage imageNamed:@"back2.jpg"];
    NSLog(@"%p", image);
根据文件路径来创建图片
  • 参数:图片文件的路径
+ (UIImage *)imageWithContentsOfFile:(NSString *)path;
拿到包中图片的路径(可以拿到当前工程中任意文件的路径)
  • 参数1:文件的名字
  • 参数2:文件的后缀
NSString * path = [[NSBundle mainBundle] pathForResource:@"player_down_1" ofType:@"jpg"];
UIImage * image2 = [UIImage imageWithContentsOfFile:path];
获取图片的大小
CGSize imagesize = image.size;
NSLog(@"%@", NSStringFromCGSize(imagesize));
设置图片(核心属性)
[imageView setImage:image];

设置内容模式

[imageView setContentMode:UIViewContentModeScaleToFill];
  • 将图片缩放(按imageView缩放),完整的显示在imageView上(默认)
UIViewContentModeScaleToFill
  • 将图片按比例缩放(图片本身的比例),完整的显示在imageView上
UIViewContentModeScaleAspectFit
  • 图片按比例缩放,imageView也按图片的比例缩放了 (这个一般不考虑)
UIViewContentModeScaleAspectFill
  • 效果和UIViewContentModeScaleToFill一样
UIViewContentModeRedraw
以下模式图片不缩放,还影响imageView的frame(一般不会用到)
UIViewContentModeCenter,
UIViewContentModeTop,
UIViewContentModeBottom,
UIViewContentModeLeft,
UIViewContentModeRight,
UIViewContentModeTopLeft,
UIViewContentModeTopRight,
UIViewContentModeBottomLeft,
UIViewContentModeBottomRight,

设置帧动画

  • 1.创建UIImageView对象
UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(50, 50, 80, 80)];
  • 2.显示图片(显示静态图片)--帧动画结束后会显示静态图片
imageView.image = [UIImage imageNamed:@"DOVE 1"];
  • 3.添加到界面上
[self.window addSubview:imageView];

显示帧动画

  • 创建图片数组
    NSMutableArray * images = [[NSMutableArray alloc] init];
    
    for (int i = 1; i < 19; i++) {
      //创建图片
      UIImage * image = [UIImage imageNamed:[NSString stringWithFormat:@"DOVE %d", i]];
        
      //将图片添加到图片数组中
      [images addObject:image];
        
    }
  • 4.设置动画图片数组(数组元素必须是UIImage对象)
[imageView setAnimationImages:images];
  • 5.设置播放完一组动画所需要的时间(单位:秒)
[imageView setAnimationDuration:1];
  • 6.设置循环次数(默认是1)
//播放次数设成0,相当于无限循环
[imageView setAnimationRepeatCount:5];
  • 7.开始播放动画
[imageView startAnimating];
  • 8.停止动画
  [imageView stopAnimating];

你可能感兴趣的:(UIImageView)