6--UIImageView 和 UIImage

大纲:

创建 UIImageView 和 UIImage (两者关系,构造方法构建,类方法构建)

基本设置(位置,大小,背景颜色)

图片填充模式(拉伸,居中......)

图片的平移与缩放

动画(创建动画,动画设置,动画播放/停止)

手势(创建手势,设置手势,启用手势,获取手势所在的View)

开发小技巧

一、创建UIImageView 和 UIImage

//创建UIImageView和UIimage 
//两者关系类似于NSString和UILabel
//UIImage继承自NSObject,是一个对象,不是视图
//UIImageView继承自UIView,是一个视图
//使用构造方法构建
    UIImage * image = [UIImage imageNamed:@"mouse.png"];
    UIImageView * imageView = [[UIImageView alloc]initWithImage:image];
//使用类方法构建
    UIImageView * imageView1 = [[UIImageView alloc]init];
    imageView.image = [UIImage imageNamed:@"mouse.png"];

二、基本设置(位置,大小,背景颜色)

//设置位置和大小
    imageView.frame = CGRectMake(10, 20, 150, 50);
//设置背景颜色
    [imageView setBackgroundColor:[UIColor redColor]];

三、图片填充模式(拉伸,居中......)

//UIViewContentModeScaleToFill,         拉伸
//UIViewContentModeScaleAspectFit,      按照宽高的最小者的比例缩放
//UIViewContentModeScaleAspectFill,     按照宽高的最大者的比例缩放
//UIViewContentModeRedraw,
//UIViewContentModeCenter,
//UIViewContentModeTop,
//UIViewContentModeBottom,
//UIViewContentModeLeft,
//UIViewContentModeRight,
//UIViewContentModeTopLeft,
//UIViewContentModeTopRight,
//UIViewContentModeBottomLeft,
//UIViewContentModeBottomRight,
    imageView.contentMode = UIViewContentModeScaleToFill;

四、图片的平移与缩放

//移动
//第一个参数:原来的Transform
//第二个参数:X轴平移距离
//第三个参数:Y轴平移距离
        CGAffineTransform old = imageView.transform;
        CGAffineTransform new = CGAffineTransformTranslate(old, 10, 0);
        imageView.transform = new;
//缩放
//第一个参数:原来的Transform
//第二个参数:X轴按比例缩放
//第三个参数:Y轴按比例缩放
        CGAffineTransform old = imageView.transform;
        CGAffineTransform new = CGAffineTransformScale(old, 0.8, 0.8);
        imageView.transform = new;

五、动画(创建动画,动画设置,动画播放/停止)

//创建动画过程
//获取动画,先创建一个UIImageView的对象(不然一开始是没有任何图像在屏幕上)
    _imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 20, 50, 50)];
    _imageView.image = [UIImage imageNamed:@"DOVE 1.png"];
//设置动画的背景
    UIImageView * backImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)];
    backImage.image = [UIImage imageNamed:@"back2.jpg"];
//创建一个数组存储图片,数组的元素是UIImage的对象
    NSMutableArray * arr = [[NSMutableArray alloc]init];
    for (int i = 1; i < 19; i++) {
//使用UIImage的对象获取图片
        UIImage * image = [UIImage imageNamed:[NSString stringWithFormat:@"DOVE %d.png",i]];
        [arr addObject:image];
    }
//设置动画每一帧的图片
    _imageView.animationImages = arr;
//设置动画的播放间隔
    _imageView.animationDuration = 1/24(设置多少帧每秒);
//设置重复次数(0为不停重复)
    _imageView.animationRepeatCount = 0;
//设置动画开始
    [_imageView startAnimating];
//设置动画停止
    [_imageView stopAnimating];

六、手势(创建手势,设置手势,启用手势,获取手势所在的View——详见 Day12 的笔记)

//创建手势
    UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc]init];
//触发该手势需要 点击 的次数
    tap.numberOfTapsRequired = 1;
//触发该手势需要 手指 的次数
    tap.numberOfTouchesRequired = 1;
//给手势设置执行的方法
    [tap addTarget:self action:@selector(test:)];
//在View上面加入手势
    [view3 addGestureRecognizer:tap];
//获取手势所在的View
    UIView * tmpView = tap.view;

七、开发小技巧

//View(颜色为clear)+手势的应用(殴打Tomcat)
//动画可以加上计时器一起运用(结合飞行标签)
//图片的平移和缩放结合计时器的运用(淘宝购物车效果)
//好好利用属性,省去传参麻烦

你可能感兴趣的:(6--UIImageView 和 UIImage)