美文网首页
UIImageView

UIImageView

作者: 古月思吉 | 来源:发表于2017-09-19 21:30 被阅读0次

    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);
    }];
    

    相关文章

      网友评论

          本文标题:UIImageView

          本文链接:https://www.haomeiwen.com/subject/mglobttx.html