重置Android中的帧动画播放

        最近在做个小项目的时候,需要用到帧动画。对应着某种状态,该动画可以停止和再次播放。我们知道,通过函数
someAnimObj.start() someAnimObj.stop

可以很容易地实现这两种需求,但是如果单纯这样做的话,会出现一个问题:第二次播放的第一帧竟然是上次停止播放时候的最后一帧,并且播放的速度会逐渐变快!

悲嘞个催的~搜索了一下,发现这个是Android帧动画的通病。现把解决方法写出来,与如我一样的菜鸟们一起分享。

((AnimationDrawable)(someImageView.getBackground())).stop();
someImageView.setBackgroundDrawable(null);
someImageView.setBackgroundResource(R.drawable.animation);

总的来说,就是重新加载了一下动画背景,使得帧动画得以重置。目前还不太清楚造成这种现象的根本原因,希望大牛们给我留言,给予指导帮助。


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值