博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIImageView
阅读量:6111 次
发布时间:2019-06-21

本文共 5097 字,大约阅读时间需要 16 分钟。

- (void)viewDidLoad {    [super viewDidLoad];    // Do any additional setup after loading the view.        /*********UIImage***********/    //由名字直接读取图片    //优点:用时相对较短    //缺点:读取之后会占用内存    //如果图片较小,用名字直接读取        UIImage *imageName = [UIImage imageNamed:@"1.png"];        //UIImageView    UIImageView *imageViewName = [[UIImageView alloc] initWithFrame:CGRectMake(20, 50, 60, 60)];    imageViewName.image = imageName;    [self.view addSubview:imageViewName];        //由图片的路径读取图片    //优点:读取之后不会占用内存    //缺点:用时相对较长    //如果图片较大,用路径直接读取    //获取图片路径:相对路径    //第一个参数:文件的名字    //第二个参数:文件的类型    NSString *path = [[NSBundle mainBundle] pathForResource:@"map" ofType:@"png"];    UIImage *imagePath = [UIImage imageWithContentsOfFile:path];    //UIImageView    UIImageView *imageViewPath = [[UIImageView alloc] initWithFrame:CGRectMake(20, 130, 200, 50)];    imageViewPath.image = imagePath;    [self.view addSubview:imageViewPath];        /**********UIImageView-动画效果*************/    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(130, 240, 60, 60)];    imageView.backgroundColor = [UIColor grayColor];    imageView.image = [UIImage imageNamed:@"1.png"];        /****动画效果相关属性****/    //创建图片数组    //开辟内存空间    NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:0];    for (int i = 1; i <= 12; i ++) {        [array addObject:[UIImage imageNamed:[NSString stringWithFormat:@"player%d.png",i]]];    }        //设置动画图片,需要接收一个数组,数组里面的类型必须是UIImage类型    imageView.animationImages = array;    //动画时间:数组里面所有的图片转一圈所用时间    imageView.animationDuration = 1;    //循环次数:大于0的数:写几就循环几次,结束    0:无限循环    imageView.animationRepeatCount = 0;        //tag    imageView.tag = 1000;    [self.view addSubview:imageView];        //开始动画    [imageView startAnimating];        //UIButton    UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];    button.frame = CGRectMake(30, 330, 260, 30);    button.backgroundColor = [UIColor redColor];    [button setTitle:@"button" forState:UIControlStateNormal];    [button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];    [self.view addSubview:button];}#pragma mark - 按钮的点击事件:停止或开始动画- (void)buttonClick:(UIButton *)button{    //找到UIImageView    UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];    //停止动画//    [imageView stopAnimating];        static BOOL isAnimation = YES;    if (isAnimation) {        [imageView stopAnimating];        isAnimation = NO;    }else{        [imageView startAnimating];        isAnimation = YES;    }}

 //*********************************************

//时间    //第一个参数执行动作相隔的时间    //第二个参数通知给谁:self    //第三个参数:执行的相关方法    //第四个参数:nil    //第五个参数:是否重复执行   YES:重复   NO:不重复//    [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(timer:) userInfo:nil repeats:YES];            //self.view.bounds  以(0, 0)点为起点,全屏大小的view    UIImageView *imageView = [[UIImageView alloc] initWithFrame:self.view.bounds];    imageView.image = [UIImage imageNamed:@"back2.jpg"];    [self.view addSubview:imageView];        //动画效果的UIImageView    UIImageView *birdView = [[UIImageView alloc] initWithFrame:CGRectMake(5, 30, 60.5, 48)];    //tag    birdView.tag = 1000;        //图片数组    NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:0];    for (int i = 1; i <= 18; i ++) {        [array addObject:[UIImage imageNamed:[NSString stringWithFormat:@"DOVE%d.png",i]]];    }        /**UIImageView的动画属性***/    birdView.animationImages = array;    birdView.animationDuration = 1;    birdView.animationRepeatCount = 0;    //开始动画    [birdView startAnimating];        [imageView addSubview:birdView];        //控制bird位置    [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(changeFrame:) userInfo:nil repeats:YES];}#pragma mark - 改变bird的位置- (void)changeFrame:(NSTimer *)timer{    UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];    static int i = 0;    [UIView animateWithDuration:1 animations:^{        imageView.frame = CGRectMake(5 + (i++ * 10), 20 +arc4random()%30, 60.5, 48);    }];    if (5 +(i++ * 10) > 320) {        imageView.frame = CGRectMake(5, 20, 60.5, 48);        i = 0;    }}#pragma mark - NSTimer的事件- (void)timer:(NSTimer *)timer{    NSLog(@"timer");}#pragma mark - 按钮的点击事件- (void)buttonClick:(UIButton *)button{    //UIView的动画效果    //第一个参数:动画执行的时间    //第二个参数:执行动作//    [UIView animateWithDuration:3 animations:^{//        self.view.backgroundColor = [UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:1.0];//    }];        //第一个参数:动画执行的时间    //第二个参数:动画延迟执行的时间    //第三个参数:动画执行的效果    //第四个参数:执行动作    //第五个参数:执行完要做的动作之后做的操作    [UIView animateWithDuration:3 delay:1 options:UIViewAnimationOptionOverrideInheritedOptions animations:^{        self.view.backgroundColor = [UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:1.0];    } completion:^(BOOL finished) {//        self.view.backgroundColor = [UIColor orangeColor];    }];}

 

转载于:https://www.cnblogs.com/hyuganatsu/p/UIImageView.html

你可能感兴趣的文章
数据加密插件
查看>>
linux后台运行程序
查看>>
win7 vs2012/2013 编译boost 1.55
查看>>
IIS7如何显示详细错误信息
查看>>
ViewPager切换动画PageTransformer使用
查看>>
coco2d-x 基于视口的地图设计
查看>>
C++文件读写详解(ofstream,ifstream,fstream)
查看>>
Android打包常见错误之Export aborted because fatal lint errors were found
查看>>
Tar打包、压缩与解压缩到指定目录的方法
查看>>
新手如何学习 jQuery?
查看>>
配置spring上下文
查看>>
Python异步IO --- 轻松管理10k+并发连接
查看>>
mysql-python模块编译问题解决
查看>>
熟练掌握doc命令下的文件操作
查看>>
Oracle中drop user和drop user cascade的区别
查看>>
【Linux】linux经常使用基本命令
查看>>
Java 内存区域和GC机制
查看>>
更新代码和工具,组织起来,提供所有博文(C++,2014.09)
查看>>
HTML模块化:使用HTML5 Boilerplate模板
查看>>
登记申请汇总
查看>>