iOS学习iOS开发攻城狮的集散地iOS 开发每天分享优质文章

简单快速实现一张图上下动图效果

2016-11-18  本文已影响516人  为心而狂

在开发中,如果项目需求比较小,时间比较紧,我们就需要一些简单快速来实现我们的功能。动画图实现的效果有很多,比如GIF,iOS的三大基本动画方式等。这里我就记录一种比较容易理解的、简单的效果。

昨天我在开发过程中,我们要实现一个图片上下来回跳动的效果。本来想简单的让美工给个GIF的,她说麻烦,安卓也说一张图就一张图!那我还能说啥,因为一般情况下不给人家找麻烦,所以就只能撸代码了。为了快速实现该功能,我用了UIView中的动画语句块,so easy!看下效果图


Untitled.gif

废话少说,贴代码

UIImageView *imageView1 = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"park"]];
    [self.view addSubview:imageView1];
    [imageView1 mas_makeConstraints:^(MASConstraintMaker *make) {
        make.centerX.equalTo(self.view);
        make.centerY.equalTo(self.view).offset(-70);
    }];

    UILabel *lab = [CLKitTool label:@"努力寻找中..." textColor:[UIColor colorWithHexString:@"9c9c9c"] font:16 lines:1];
    [self.view addSubview:lab];
    [lab mas_makeConstraints:^(MASConstraintMaker *make) {
        make.centerX.equalTo(self.view);
        make.top.equalTo(imageView1.mas_bottom).offset(20);
    }];
    //animateWithDuration:动画时间,delay:延迟时间,usingSpringWithDamping:弹簧效果,initialSpringVelocity:初始速度
    [UIView animateWithDuration:5.0 delay:0.3 usingSpringWithDamping:0.01 initialSpringVelocity:0.05 options:UIViewAnimationOptionCurveEaseInOut animations:^{  CGPoint point = imageView1.center;
        point.y -= 15;//上下浮动就改变纵坐标
        [imageView1 setCenter:point];
    } completion:^(BOOL finished) {
        // 动画完成后执行
        imageView1.image = [UIImage imageNamed:@"表情"];
        lab.text = @"没有为您查找到可用的停车场";
    }];

😝

上一篇下一篇

猜你喜欢

热点阅读