android 自定义加载动画效果,Android自定义加载动画

本文详细介绍了如何在Android中创建自定义动画,通过继承View并实现构造函数,设置动画图像属性如半径、间距、位置等。利用onSizeChanged获取尺寸变化,onDraw方法进行绘制,并通过ValueAnimator实现平移、缩放、旋转等动画效果。通过invalidate()方法刷新视图,同时讲解了如何组合和启动动画以及设置点击事件来触发动画。
摘要由CSDN通过智能技术生成

自定义动画知识点:

绘制

Invalidate触发绘制(刷新)

ValueAnimator属性动画

canvas画布的一些操作:translate(重新映射画布上的 (0,0) 位置),alpha,scale(缩放当前绘图至更大或更小),rotate(旋转当前绘图)

绘制图前先理清图像的关系:比如圆的半径,圆心在屏幕的位置

1、创建动画的类继承view,并实现构造函数

76d70ccbcb2a

2、定义动画图像的各种属性:半径、间距

76d70ccbcb2a

要画图前首先要确定图像的位置,大小

可以画图像布局示意图:

76d70ccbcb2a

大圆半径为3R,小圆半径为1R,两圆间距为0.5R。则可以得出:

布局图像最大长度minWidth:(2*3R+2*R+0.5R)= 8.5R

布局图像最大高度minHight:2*3R=6R

圆心位置:屏幕宽度为width,屏幕高度为hight

大圆心所在水平位置Cx:(width-minWidth)/ 2+3R

大圆心所在竖直位置Cy: hight/2

3、通过onSizeChaged获得对应的尺寸变化

4、onDraw方法进行对应的绘制

76d70ccbcb2a

使用drawCircle需要:cx,cy,半径,画笔

因此需要自己配置画笔:

76d70ccbcb2a

实现动画效果:

duration:动画的持续时间

repeatCount:动画的重复

每次动画都重新绘制:invalidate()

76d70ccbcb2a

同理:在创建一个动画

76d70ccbcb2a

同时执行动画:animator.playTogether()

启动动画和结束动画:

76d70ccbcb2a

设置点击事件:

76d70ccbcb2a

初始化点击事件:

76d70ccbcb2a

并在main_Activity中调用init()即可实现动画:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值