android 图片拉伸动画,java,Android_Android的属性动画的拉伸效果前后两次效果不一致,求解?,java,Android - phpStudy...

Android的属性动画的拉伸效果前后两次效果不一致,求解?

开发过程中需要做五个点的上下拉伸效果,奇怪的是第一次进行拉伸的时候是正常的,但是第二次开始就不对了,加打印看也没问题啊,实在是找不到原因,求大神看看

第一次拉伸效果:

第二次及以后的拉伸效果:

因为之前每个点还有上下移动的操作,所以我添加打印看了一下开始拉伸动画前的坐标,五个点在同一水平线上,实在是不知道为啥变成这样。

代码如下:

private static void generateSpeakingAnimation(){

Log.d(TAG, "generateSpeakingAnimation");

Log.d(TAG, "dot1.getTranslationY = " + dot1.getTranslationY());

Log.d(TAG, "dot2.getTranslationY = " + dot2.getTranslationY());

Log.d(TAG, "dot3.getTranslationY = " + dot3.getTranslationY());

Log.d(TAG, "dot4.getTranslationY = " + dot4.getTranslationY());

Log.d(TAG, "dot5.getTranslationY = " + dot5.getTranslationY());

Log.d(TAG, "dot1.getY = " + dot1.getY());

Log.d(TAG, "dot2.getY = " + dot2.getY());

Log.d(TAG, "dot3.getY = " + dot3.getY());

Log.d(TAG, "dot4.getY = " + dot4.getY());

Log.d(TAG, "dot5.getY = " + dot5.getY());

dot1.setTranslationY(0);

dot2.setTranslationY(0);

dot3.setTranslationY(0);

dot4.setTranslationY(0);

dot5.setTranslationY(0);

Log.d(TAG, "dot1.getScaleY = " + dot1.getScaleY());

Log.d(TAG, "dot2.getScaleY = " + dot2.getScaleY());

Log.d(TAG, "dot3.getScaleY = " + dot3.getScaleY());

Log.d(TAG, "dot4.getScaleY = " + dot4.getScaleY());

Log.d(TAG, "dot5.getScaleY = " + dot5.getScaleY());

Log.d(TAG, "dot1.getY = " + dot1.getY());

Log.d(TAG, "dot2.getY = " + dot2.getY());

Log.d(TAG, "dot3.getY = " + dot3.getY());

Log.d(TAG, "dot4.getY = " + dot4.getY());

Log.d(TAG, "dot5.getY = " + dot5.getY());

animSetForSpeaking = new AnimatorSet();

animSetForSpeaking.setDuration(500);

animSetForSpeaking.setInterpolator(new AccelerateDecelerateInterpolator());

ObjectAnimator animtion1 = ObjectAnimator.ofFloat(dot1, "scaleY", 1f, 5f, 1f);

animtion1.setRepeatCount(ValueAnimator.INFINITE);

animtion1.setRepeatMode(ValueAnimator.INFINITE);

ObjectAnimator animtion2 = ObjectAnimator.ofFloat(dot2, "scaleY", 1f, 10f, 1f);

animtion2.setRepeatCount(ValueAnimator.INFINITE);

animtion2.setRepeatMode(ValueAnimator.INFINITE);

ObjectAnimator animtion3 = ObjectAnimator.ofFloat(dot3, "scaleY", 1f, 5f, 1f);

animtion3.setRepeatCount(ValueAnimator.INFINITE);

animtion3.setRepeatMode(ValueAnimator.INFINITE);

ObjectAnimator animtion4 = ObjectAnimator.ofFloat(dot4, "scaleY", 1f, 10f, 1f);

animtion4.setRepeatCount(ValueAnimator.INFINITE);

animtion4.setRepeatMode(ValueAnimator.INFINITE);

ObjectAnimator animtion5 = ObjectAnimator.ofFloat(dot5, "scaleY", 1f, 5f, 1f);

animtion5.setRepeatCount(ValueAnimator.INFINITE);

animtion5.setRepeatMode(ValueAnimator.INFINITE);

animSetForSpeaking.playTogether(animtion1, animtion2, animtion3, animtion4, animtion5);

animSetForSpeaking.start();

}

log打印里面显示5个点的getScaleY都是1,还有在进行setTranslationY之后5个点的getY也都是一样的值,应该不存在点的位置发生变化的情况,所以感觉很诡异,求高手解答~~

相关阅读:

Python Dataframe合并问题

vue v-for 为元素添加点击事件的时候怎么才能处理当前dom元素?

Echarts雷达图可以添加顶点么?

求教前端开发如何兼容safari

如何在linux中查找指定列表中的文件

python变量起别名问题

使用react router后怎样将父组件的数据传递到子组件中

渲染 mysql查询到的数据,中文乱码怎么解决?

react 异步怎么返回 Immutable 数据?

Android 的UP事件和最后一个MOVE事件所拿到的点是相同的

V-model绑定数组的时候为啥会不能更新?

for循环中异步转同步如何改造?

onbeforeunload事件粗发问题?

gitbook生成的图书中,表格内不能使用markdown语法?

如何用纯CSS将图片填满div,自适应容器大小,已有两个不太完善的方案

Git 怎么添加多个远程仓库呢?

swift closure 参数的写法,不太明白?

react中import normalize.css报错

node_modules不上传服务器导致网页无法打开,提示找不到对应的模块

下面加载的都是哪的文件呀?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值