12UIView动画设置雪花下落_forin

一、运用继承,添加自定义的属性
项目:Homework_MoreCircleMove_Teacher0307
1.1

#import <UIKit/UIKit.h>

@interface CustomImageView : UIImageView
//初始角度
@property float startAngle;
@end

1.2 for…in

    //2.2 使用泛型遍历for in
    for (CustomImageView *earth in earthArray)
    {
        //给变球的角度
        float endAngle = earth.startAngle + speedAngle;
        //计算x,y坐标
        float x = CENTER_X + REDIOUS * cos(HUDU(endAngle));
        float y = CENTER_Y + REDIOUS * sin(HUDU(endAngle));
        earth.center = CGPointMake(x, y);
    }

二、UIView动画设置雪花下落
项目:Homework_FaillingSnow_Teacher0307
1.1 UIView动画

    //1.创建雪花
    _snow = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 60, 60)];
    _snow.image = [UIImage imageNamed:@"flake"];
    [self.window addSubview:_snow];
    
    //2.UIView动画
    //a.开启一个动画块儿
    //void * :代表任意指针
    [UIView beginAnimations:nil context:nil];
    //a.1 设置动画时间,秒
    [UIView setAnimationDuration:3];
    //a.2 设置动画要运动的位置坐标
    _snow.frame = CGRectMake(100, 400, 60, 60);
    //a.3 设置动画结束的方法
    //a.3.1 设置代理,让谁来执行动画结束的方法
    [UIView setAnimationDelegate:self];
    //a.3.2 设置动画结束时的方法
    [UIView setAnimationDidStopSelector:@selector(snowChangeAlpha)];
    //b.提交动画
    [UIView commitAnimations];

1.2 结束动画

//改变透明度
- (void)snowChangeAlpha
{
    //a.3 设置透明度变化,取值范围是0~1。
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
//    //RGB:[0,255]
//    [UIColor colorWithRed:180.0/255.0 green:34.0/255.0 blue:120.0/255.0 alpha:1];
    _snow.alpha = 0;
    //方法1:代理
    [UIView setAnimationDelegate:self];
    [UIView setAnimationDidStopSelector:@selector(removeSnow)];
    //方法2:延迟执行方法
    //当代码执行到这一句代码时,会延迟*秒再执行@selector(removeSnow:)方法
    //方法参数类型 与 所传对象(object)类型 保持一致
    [self performSelector:@selector(removeSnow:) withObject:_snow afterDelay:1];
    
    [UIView commitAnimations];
}
//移除雪花
- (void)removeSnow:(UIImageView *)snow
{
    [snow removeFromSuperview];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 10,548评论 5 13
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 12,724评论 6 30
  • 一、重用版雪花下落1.1 重用1项目:Homework_20FallingSnow_Teacher0308 1.2...
    AsaGuo阅读 3,998评论 0 3
  • 在iOS实际开发中常用的动画无非是以下四种:UIView动画,核心动画,帧动画,自定义转场动画。 1.UIView...
    请叫我周小帅阅读 8,407评论 1 23
  • 清晨路经单位前的一条马路。 长长的马路里有个红绿灯。 恰好看到车行方向亮的是绿灯,一辆公交车却在绿灯前停了下来。正...
    迦颜阅读 1,576评论 0 0

友情链接更多精彩内容