Animator --属性动画

2023-05-16

属性动画Animator     、传统动画  Animation

传统动画:   eg.  平移---

TranslateAnimation animation=new TA(0 ,200 ,0 ,0); //参数:初始/最终  的   X/Y坐标              

animation.setDuration( 1000); //延迟时间

animation.setFillAfter( true); //停在最终位置             

ImageView iv=() fv~( ); //控件 初始化             

iv.startAnimation(animation); //启动              

//     移动后,原点击事件仍然在初始位置                                            


属性动画:

public class AnimatorActivity extends Activity {

    private ImageView main_iv;
    private ImageView c_iv;
    private ImageView d_iv;
    private ImageView e_iv;

    ObjectAnimator oa_3;
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.animator);

        init();
        setAnimator();
    }

    private void setAnimator() {    //设置动画 --对象、属性、X/Y绝对位置(起始、终止
        //ObjectAnimator.ofFloat(main_iv,"translationX",0,200).setDuration(1000).start();
//        PropertyValuesHolder pv1=PropertyValuesHolder.ofFloat("rotation",0,360f); //参数--属性及其属性值
//        ObjectAnimator.ofPropertyValuesHolder(c_iv,pv1).setDuration(9000).start();    //对象、动画
        /**利用动画集完成多个动画*/
        ObjectAnimator oa_1=new ObjectAnimator().ofFloat(main_iv,"translationY",0,100);
        ObjectAnimator oa_2=new ObjectAnimator().ofFloat(c_iv,"translationX",0,200);
        oa_3=new ObjectAnimator().ofFloat(d_iv,"translationX",230,30);
        AnimatorSet set= new AnimatorSet();
        //set.playTogether(oa_1,oa_2,oa_3);   //动画集,同时播放
        set.play(oa_1).with(oa_2);      //可对每一个进行控制
        set.play(oa_3).after(oa_1);
        set.setDuration(2300).start();
        /**点击事件*/
        initListener();

    }

    private void initListener() {
        oa_3.addListener(new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animation) {

            }

            @Override
            public void onAnimationEnd(Animator animation) {
                ObjectAnimator.ofFloat(e_iv,"rotation",0,360).setDuration(2300).start();
            }

            @Override
            public void onAnimationCancel(Animator animation) {

            }

            @Override
            public void onAnimationRepeat(Animator animation) {

            }
        });
    }

    private void init() {
        main_iv= (ImageView) findViewById(R.id.iv_main);
        c_iv= (ImageView) findViewById(R.id.iv_c);
        d_iv= (ImageView) findViewById(R.id.iv_d);
        e_iv= (ImageView) findViewById(R.id.iv_e);
    }
}public class MyAnimatorActivity extends Activity implements View.OnClickListener{

    private int[] res={R.id.iv_main,R.id.iv_c,R.id.iv_d,R.id.iv_e};
    private List
    
    
     
      list_iv=new ArrayList<>();
    private boolean flag=true;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.my_animator);

        init();
    }
//实例化控件,并将其加入到List中,顺便实现点击事件
    private void init() {
        for(int i=0;i
     
     
    
    



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Animator --属性动画 的相关文章

  • Vue基础—实践:模板语法、路由

    前言 Vue基础模板语法 xff1a 数据渲染 路由 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 模板语法 1 数据渲染 获取对象数据 span class token comment html sp
  • javaScript&ES6&jQuery

    前言 工作中学习和使用过程中遇到的开发问题和发现 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 原生js 1 新发现 删除对象属性 xff1a delete this object propertyNa
  • 算法_初级算法(字符串&排序)-Java实现

    前言 初始内容 xff1a 常见算法题 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 字符串 1 KMP算法 概念 xff1a 对字符串进行切割分组 xff08 前缀 后缀 xff09 xff0c 按顺
  • Git在IDEA中的基本操作

    前言 git的基本操作 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 简介 概念 xff1a 免费 开源的分布式版本控制系统特点 xff1a Git是一个开源的分布式版本控制系统 xff0c 可以有效
  • Vue基础—理论

    前言 Vue的一些理论点 xff0c 学习Vue的一些前置知识 更多可查看官方文档 xff1a Vue 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 介绍 1 概念 Vue是一套用于构建用户界面的渐进式
  • Android屏幕旋转180°的实现

    这次分享一个实现屏幕只能在竖直方向上旋转的功能 xff0c 开发相机的童鞋应该都会遇到屏幕旋转的问题 xff0c 一般都是横竖屏的切换 xff0c 布局变换 xff0c 生命周期问题啥的 xff0c 这些网上一搜一大堆的解决方案 xff0c
  • Sql语法-Oracle基础:增删改查

    前言 Oracle数据库通用的sql语法 xff1a 增删改查 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 Create 建表 用户 xff1b 授权 1 建表 create table 表名 列名称
  • 接口设计文档模板

    前言 后端接口设计文档 xff0c 个人认为需要告知接口调用者的内容 有助于分析开发功能 评估工作量 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 接口设计说明 xx系统 修改记录 本次修改记录 xff0c
  • 数据结构基础之数组&栈&队列&链表&二叉树&散列表&图

    前言 数据结构基础 xff1a 数组 栈 队列 链表 二叉树 散列表 图 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 1 概述 存储数据的空间排列查询数据的操作方式核心 xff1a 有效占用空间 查询数据
  • Java深入浅出之反射&集合&可见性&NIO

    前言 java的一些特性 集合框架概要 线程安全的可用性说明 NIO网络编程 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 特性 1 抽象类和接口的区别 定义 抽象类 xff1a 用abstract修饰
  • docker及docker-compose基础:安装、启动、dockerfile制作、常用命令

    前言 docker基础包含安装 启动 dockerfile 私有仓库建立 xff0c docker compose基础 xff0c 常用命令等 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 基础 参考资
  • Java注解初识:注解说明、使用示例;AOP概述

    前言 注解基础知识及使用示例 AOP基础知识点 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 文章目录 前言一 基础1 元注解2 预置注解 二 使用1 通过反射获取注解信息 三 前置知识 代理模式 amp
  • python初学习:基础数据类型、字符串、条件判断、循环、容器、类

    前言 初始内容 xff1a python初学知识 xff0c 包含基础数据类型 字符串 条件判断 循环 容器 类定义 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 文章目录 前言一 基础1 基础数据类型2
  • 阿里巴巴Java开发手册解析_编程规约-集合处理

    前言 阿里巴巴Java开发手册 xff08 黄山版 xff09 编程规约 集合处理 该章节的知识点基本都来源于jdk源码 xff0c 将结合源码及例子进行理解 备注 xff1a 文章中的详细及说明为手册本身内容 博客地址 xff1a 芒果橙
  • MySql数据库类型及与后端(Java)类型的对应&增删改查基本语法

    前言 数据库类型及与后端 xff08 Java xff09 类型的对应 增删改查基本语法 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 文章目录 前言一 数据库类型及与后端 xff08 Java xff09
  • SpringBoot基础知识点:创建、配置、JPA

    前言 SpringBoot基础知识点 xff1a 创建 配置 JPA 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 基础 1 特点 化繁为简 xff0c 简化配置备受关注微服务的入门级框架 Micros
  • ABAP 常用的系统变量說明

    系统内部有一个专门存放系统变量的结构SYST 其中最常用的系统变量有 SY SUBRC 系统执行某指令后 表示执行成功与否的变量 0 表示成功 SY UNAME 当前使用者登入SAP的USERNAME SY DATUM 当前系统日期 SY
  • Spring基础、IOC、SpringMVC

    前言 Spring基础 IOC SpringMVC 博客地址 xff1a 芒果橙的个人博客 http mangocheng com 一 常见问题 1 基础信息 描述 xff1a 轻量级开发框架 xff0c 旨在提高开发效率及系统的可维护性
  • 开发中遇到的问题汇总:MySQL、linux

    前言 开发中遇到的问题汇总 MySQL xff1a 非法字符集 1055 linux xff1a source not found 博客地址 xff1a 芒果橙的个人博客 http mangocheng com MySQL Illegal
  • java8-stream流操作实例:collect、join、map、sort、findFirst、max、findAny、match、group分组、collectingAndThen去重

    前言 jdk8 新特性 xff1a stream流操作 包含 xff1a collect 收集转化 join 字符串连接 map 映射 sort 排序 findFirst 筛选第一个 max min 获取最大 小的一个值 findAny 查

随机推荐