UISwitch + UIimage

这里解释一个小例子,希望对你有点帮助,利用UISwitch控制UIimage的动画效果

先定义一个数组,用来存放照片,现在定义数组有一个特别简单的方法:

NSArray *image1 = @[];

但是要注意的是,其中插入的是对象。

    UIImage *img1 = [UIImage imageNamed:@"1.png"];
    UIImage *img2 = [UIImage imageNamed:@"2.png"];
    UIImage *img3 = [UIImage imageNamed:@"3.png"];
    
    NSArray *image1 = @[img1,img2,img3];

再定义一个UIImageView 视图用来显示动画效果,还有一个UISwitch用来控制动画效果

@property (strong,nonatomic) UIImageView *img;
    UISwitch *switch1 = [[UISwitch alloc]initWithFrame:CGRectMake(140, 100, 50, 30)];
   [switch1 addTarget:self action:@selector(switchclick:) forControlEvents:UIControlEventValueChanged];
    
    _img = [[UIImageView alloc]initWithFrame:CGRectMake(110,250, 300, 300)];

然后设置动画效果属性

    //表明要操作的数组
    _img.animationImages = image1;
    //重复的次数,0代表点是无限次
    _img.animationRepeatCount = 0;
    //重复的频率
    _img.animationDuration = 0.1;

上边定义UISwitch的时候定义了一个动作方法,现在实现它

-(void)switchclick:(UISwitch *)aa
{
    
    if (aa.on) {
        [_img startAnimating ];
    }
    else
    {
        [_img stopAnimating];
    }
}

记得这样需要传参数的方法是如何定义的。

再加载一下两个的视图,完工

    [self.view addSubview:switch1];
    [self.view addSubview:_img];
原文地址:https://www.cnblogs.com/IT-jqm/p/UISwitch-UIimage.html