大纲:
创建 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)
//动画可以加上计时器一起运用(结合飞行标签)
//图片的平移和缩放结合计时器的运用(淘宝购物车效果)
//好好利用属性,省去传参麻烦