zoukankan      html  css  js  c++  java
  • IOS-UI基础-UIImageView帧动画

    1. 创建一个可变数组 --> mutableArray, 用来存放, UIImage 对象, 要做动画的图片
    2. 执行一个for循环
    1. 拼接图片名称
    2. 实例化图片对象 --> UIImage
    3. 把UIImage对象添加到可变数组中

    3. 把可变数组赋值给UIImageView的animationImages

    为imageView 设置 图片 --> 数组中最后一个UIImage对象
    设置重复次数: animationRepeatCount : 如果不设置, 默认是无限循环
    设置动画时间: 根据图片的个数来决定

    4. 开启动画
    [animationImageView startAaimating];


    加载图片的两种方式:

    [UIImage imageNamed:imageString] : 就会产生缓存
    优点: 下次访问的速度回比较快
    缺点: 占用内存空间


    // 通过 imageWithContentsOfFile: 加载图片 加载的图片比较大, 占用内存
    优点: 不会产生缓存
    缺点: 速度慢

    NSString *imageString = [NSString stringWithFormat:@"%@%03d.png",name, i];

    // 读取文件路径 , 要加上 文件的后缀
    NSString *path = [[NSBundle mainBundle] pathForResource:imageString ofType:nil];

    UIImage *image = [UIImage imageWithContentsOfFile:path];

    延迟 duration 时间之后, self 调用 clearArrayPoint 参数 为nil
    [self performSelector:@selector(clearArrayPoint) withObject:nil afterDelay:duration];


    /**
    _animationImageView : 在 duration 之后, 执行 setAnimationImages: 这个方法, 参数为nil
    */
    [_animationImageView performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:duration];

    Assets.xcassets : 在打包的时候, 会把这个文件夹, 进行压缩, 加密 只能通过 imageNamed: 访问
    素材图片 , 比较小的图片


    如果放到bundle 中: imageNamed: 和 imageWithContentsOfFile: 都可以方法
    使用图片的时候, 不管是jpg 还是 png 都要加上后缀名

    如果通过代码的方式 设置图片 png 不用设置后缀名 ,jpg 需要设置

    放置比较大的图片, 欢迎页面

  • 相关阅读:
    Vue请求参数转换(qs的使用---对象序列化)
    Vue中使用async/await解决异步请求问题
    数据结构:set
    数据结构:map (不是数组的map方法)
    数组方法-reduce 和 ES6扩展运算符
    数据分析相关
    Hadoop委任和解除节点
    Oozie调度Sqoop报错
    Oozie调度Sqoop的两种方式
    MySql数据表直接到Hive表操作
  • 原文地址:https://www.cnblogs.com/DreamLinku/p/5393746.html
Copyright © 2011-2022 走看看