android - 可以在 AnimationDrawable 上添加框架但不能删除框架吗?

标签 android animation android-imageview animationdrawable

我正在创建一个应该随机更改的动画,所以我需要使用 AnimationDrawable(是的,我无法通过使用 Animation 来管理它。)所以基本上,我有一些 imageviews 并且我正在动态添加帧,并设置给他们。到目前为止,一切正常。我可以看到动画有效,但问题是在一个动画完成后,我需要删除该 imageView 上的每一帧,然后向其添加新帧。但不幸的是我找不到删除框架的方法......有办法吗?还是只是令人讨厌的缺乏?

提前致谢。

最佳答案

通过将 animationDrawable 设置为 null、重新创建它然后将其设置回 imageview 来管理它...但不确定这是否是执行此操作的有效方法。我仍然认为应该有一个类似 removeFrame 的方法......无论如何这里是解决方案:

AnimationDrawable animationFrame = (AnimationDrawable) view.getDrawable();
animationFrame = null;
animationFrame = new AnimationDrawable(); 
// Do stuff...
view.setBackgroundDrawable(animationFrame);

如果有更有效的方法来处理这个问题,请告诉我。我猜是因为在几毫秒内一遍又一遍地创建一个新对象可能会导致内存问题。

关于android - 可以在 AnimationDrawable 上添加框架但不能删除框架吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15941706/

相关文章:

扩展 Activity 时出现 java.lang.NullPointerException

javascript - 带有 png 图像的 3D 动画

ios - 使用 `moveRowAtIndexPath:toIndexPath:` 和 `estimatedRowHeight` 时 `UITableViewAutomaticDimension` 中的 UITableViewCell 动画错误

android - 在 API 21+ 上使用带有 srcCompat 的 VectorDrawables 将 Android 支持库更新到 23.2.0

android - Android中的脉动按钮动画

java - 仅当键存在时才向 ArrayList 添加数据

android - fragment 旋转后如何不第二次调用 subscribe() 主体?

android - 没有在android中使用parse.com获取推送通知

javascript - 遮不住我的太阳动漫溢出

android - 旋转 ImageView 后 OnClick 监听器不起作用?