IOS(UI)_相框动画(动画轮播)

这里写图片描述

主要的UI布局就不多说了

相框动画主要使用动画效果来轮播

  • 1.向创建一个UIImage把图片给他(anglaybaby.jpg为图片初始化是显示的图片)
    UIImage *image=[UIImage imageNamed:@"anglaybaby.jpg"];
  • 2.创建UIImageView把UIImage放进创建好的UIImageView(并设置UIImageView的大小)
    UIImageView *imageView=[[UIImageView alloc] initWithImage:image];
  • 3.利用UIImageView来制作动画
        imageView.animationImages=@[
        [UIImage imageNamed:@"anglaybaby"],
        [UIImage imageNamed:@"anglaybaby2"],
        [UIImage imageNamed:@"anglaybaby3"],
        [UIImage imageNamed:@"anglaybaby4"]];
    //运行完成的时间长短
    imageView.animationDuration=3.0;
    //循环次数
    imageView.animationRepeatCount=FLT_MAX;//无限循环
  • 4.动画停止和开始
        [imageView startAnimating];//开始

        [imageView stopAnimating];//停止

实现代码:
ViewController.m


#import "ViewController.h"
#import "NextViewController.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    //用
    //UIImageView来表示相框,用来承载图片

    UIImage *image=[UIImage imageNamed:@"anglaybaby.jpg"];

    //UIImage *image=[[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"anglaybaby" ofType:@"jpg"]];//ofType为后缀名如果为png就不用写
    NSLog(@"image.size=%@",[NSValue valueWithCGSize:image.size]);

    UIImageView *imageView=[[UIImageView alloc] initWithImage:image];

    imageView.backgroundColor=COLOR(34, 199, 250, 1);
    //添加到视图上

    imageView.translatesAutoresizingMaskIntoConstraints=NO;
    [self.view addSubview:imageView];

    NSLayoutConstraint *constraint5=[NSLayoutConstraint constraintWithItem:imageView
                                                                 attribute:NSLayoutAttributeCenterX
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:self.view
                                                                 attribute:NSLayoutAttributeCenterX
                                                                multiplier:1
                                                                  constant:0];
    [self.view addConstraint:constraint5];

    NSLayoutConstraint *constraint6=[NSLayoutConstraint constraintWithItem:imageView
                                                                 attribute:NSLayoutAttributeCenterY
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:self.view
                                                                 attribute:NSLayoutAttributeCenterY
                                                                multiplier:1
                                                                  constant:0];

    [self.view addConstraint:constraint6];
    NSLayoutConstraint *constraint7=[NSLayoutConstraint constraintWithItem:imageView
                                                                 attribute:NSLayoutAttributeWidth
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:nil
                                                                 attribute:NSLayoutAttributeWidth
                                                                multiplier:1
                                                                  constant:200];
    [self.view addConstraint:constraint7];

    NSLayoutConstraint *constraint8=[NSLayoutConstraint constraintWithItem:imageView
                                                                 attribute:NSLayoutAttributeHeight
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:nil
                                                                 attribute:NSLayoutAttributeHeight
                                                                multiplier:1
                                                                  constant:200];
    [self.view addConstraint:constraint8];


    //利用image制作相框动画
    imageView.animationImages=@[[UIImage imageNamed:@"anglaybaby"],
                                [UIImage imageNamed:@"anglaybaby2"],
                                [UIImage imageNamed:@"anglaybaby3"],
                                [UIImage imageNamed:@"anglaybaby4"]];

    imageView.animationDuration=3.0;

    imageView.animationRepeatCount=FLT_MAX;//无限循环

    imageView.tag=1000;

    //等比

    /*
     相框填充方式


     UIViewContentModeScaleToFill,//拉伸自动适应
     UIViewContentModeScaleAspectFit,      // contents scaled to fit with fixed aspect. remainder is transparent
     UIViewContentModeScaleAspectFill,    按原始大小显示 // contents scaled to fill with fixed aspect. some portion of content may be clipped.
     UIViewContentModeRedraw,              // redraw on bounds change (calls -setNeedsDisplay)
     UIViewContentModeCenter,              // contents remain same size. positioned adjusted.
     UIViewContentModeTop,
     UIViewContentModeBottom,
     UIViewContentModeLeft,
     UIViewContentModeRight,
     UIViewContentModeTopLeft,
     UIViewContentModeTopRight,
     UIViewContentModeBottomLeft,
     UIViewContentModeBottomRight,


     */
    imageView.contentMode=UIViewContentModeScaleAspectFit;


    //图片下面
    UIButton *button2=[UIButton buttonWithType:UIButtonTypeCustom];
    [button2 setTitle:@"开始" forState:UIControlStateNormal];
    [button2 setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
    [button2 setTitle:@"停止" forState:UIControlStateSelected];
    button2.backgroundColor=COLOR(34, 199, 250, 1);
    button2.layer.cornerRadius=5.0;
    button2.layer.masksToBounds=YES;
    [button2 addTarget:self action:@selector(animatiomAction:) forControlEvents:UIControlEventTouchUpInside];
    button2.translatesAutoresizingMaskIntoConstraints=NO;
    [self.view addSubview:button2];


    NSLayoutConstraint *constraint_button1=[NSLayoutConstraint constraintWithItem:button2
                                                                 attribute:NSLayoutAttributeCenterX
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:self.view
                                                                 attribute:NSLayoutAttributeCenterX
                                                                multiplier:1
                                                                  constant:0];
    [self.view addConstraint:constraint_button1];

    NSLayoutConstraint *constraint_button2=[NSLayoutConstraint constraintWithItem:button2
                                                                 attribute:NSLayoutAttributeTop
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:imageView
                                                                 attribute:NSLayoutAttributeBottom
                                                                multiplier:1
                                                                  constant:20];

    [self.view addConstraint:constraint_button2];
    NSLayoutConstraint *constraint_button3=[NSLayoutConstraint constraintWithItem:button2
                                                                 attribute:NSLayoutAttributeWidth
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:nil
                                                                 attribute:NSLayoutAttributeWidth
                                                                multiplier:1
                                                                  constant:100];
    [self.view addConstraint:constraint_button3];

    NSLayoutConstraint *constraint_button4=[NSLayoutConstraint constraintWithItem:button2
                                                                 attribute:NSLayoutAttributeHeight
                                                                 relatedBy:NSLayoutRelationEqual
                                                                    toItem:nil
                                                                 attribute:NSLayoutAttributeHeight
                                                                multiplier:1
                                                                  constant:30];
    [self.view addConstraint:constraint_button4];






}


-(void)animatiomAction:(UIButton *)sender
{
    UIImageView *imageView=(UIImageView *)[self.view viewWithTag:1000];
    sender.selected=!sender.selected;
    if (sender.selected)
    {
        [imageView startAnimating];
    }
    else
    {
        [imageView stopAnimating];
    }
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值