UIImageView

1.功能:
(1)UIImageView是一个用来展示图片的UI控件
(2)除了能展示图片之外,还可以播放动画

2.如何创建 & 基本属性设置:

UIImageView * imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 465)];
imageView.image = [UIImage imageNamed:@"2"];//设置图片
imageView.highlightedImage = [UIImage imageNamed:@"3"];//设置高亮状态的图片
imageView.highlighted = YES;//设置高亮的状态
imageView.tag = 1000;//设置标记值
/*注:
 (1)当一个图片视图做为一个父视图存在时,如果使用默认不接收用户交互的属性,那么加在该视图上的子视图也不能进行用户交互;
 (2)如果一个子视图在父视图之外,那么,在点击这个子视图时,子视图不会接收事件响应
 */
imageView.userInteractionEnabled = YES;//默认情况 下,图片视图是不允许与用户进行用户交互的
[self.window addSubview:imageView];  //将imageView对象加载到window中才可以显示!

3.动画:
(1)创建一个装载动画图片的数组:

NSMutableArray * images = [[NSMutableArray alloc]init];
for (int i = 1; i<=8; i++) {
    NSString * imageName = [NSString stringWithFormat:@"得瑟%d",i];//准备图片的名字
    UIImage * image = [UIImage imageNamed:imageName];//创建图片
    [images addObject:image];//加到数组里
}
imageView.animationImages = images;//将图片数组加到动画数组的方法中

(2)动画的播放参数设置:

imageView.animationDuration = 0.5;//设置动画播放的时间
imageView.animationRepeatCount = 0;//设置动画播放的次数
[self.window addSubview:imageView];//将imageView加到屏幕上

(3)动画的开始和结束设置:

[imageView startAnimating];//开始动画
[imageView stopAnimating];//结束动画
imageView.isAnimating  //它的值是bool值

(4) 动画还有高亮状态下的动画,和普通动画是一样的,也是:设置“动画数组”/设置动画播放参数/设置动画播放或结束

imageView.highlightedAnimationImages = heightLightImages;//将高亮图片动画数组设置给imageView
imageView.highlighted = YES;//通过这个属性来切换他是否是高亮状态

3.动画 VS 动画效果:
(1)动画效果:

[UIView animateWithDuration:0.3 animations:^{
        CGPoint center=snowFlake.center;
         center.y+=20;
         snowFlake.center=center;}];

(2)动画,是自己制作的加载图片合成的动画效果;而动画效果是使得animations block里面得动作较为连贯,有动画的效果,一般用来平滑操作平移、旋转、缩放等效果

4.transform属性:
(1)功能:这个属性称为“仿射变换矩阵”,使视图产生 平移/旋转/缩放 的效果
注:transform是UIView中的属性!(UIImageView是继承自UIView的)
(2)基本方法:
注:下面的方法,是基于标准仿射变换矩阵进行变换的,即:变换了一次就不再变化!
a.缩放

imageView.transform = CGAffineTransformMakeScale(-2, -2);//两个参数分别为水平方向和垂直方向
imageView.transform = CGAffineTransformScale(imageView.transform, 1.1, 1.1);//在现有的基础上进行变换

b.平移

imageView.transform = CGAffineTransformMakeTranslation(20, 20);//设置水平/垂直进行平移
[UIView animateWithDuration:0.3 animations:^{
    imageView.transform = CGAffineTransformTranslate(imageView.transform, -20, 20);
}];

c.旋转

[UIView animateWithDuration:0.3 animations:^{
    //imageView.transform = CGAffineTransformMakeRotation(M_PI);
    imageView.transform = CGAffineTransformRotate(imageView.transform, M_PI_2);
}];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,200评论 4 61
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,551评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,141评论 5 13
  • UIImageView 文档,https://developer.apple.com/reference/uiki...
    阿斯兰iOS阅读 2,232评论 0 0
  • 结营的时候听到猫叔说,还可以继续玩10天,欣喜若狂。10天仿佛就是永远,习惯了每天和伙伴们互道早晚安,习惯了每天的...
    明霞_eef1阅读 183评论 0 6