3

我有一个AnimationDrawable包含大型动画的 android。(每 100x100 像素 24 帧)。我想在不同大小的多个视图中同时并同步地显示这个动画。我的意思是当 view1 显示 frame1 时,所有其他视图也必须显示 frame1,并且所有视图同时可见。

我尝试创建一个AnimationDrawable,并将其用作多个视图的背景可绘制对象,并使用了 animationdrawable.start()。但在此之后,只有我的一个视图有动画效果,而其他视图则停留在 frame1。

我看过这些线程

单个动画 - 多个视图

同时将一个动画应用于多个视图

但答案都包括创建多个动画实例。我应该避免这种情况,因为多次加载动画会占用大量内存,因为动画很大。

我想知道是否有人知道它是如何实现的?

PS> 我也尝试使用静态位图作为可绘制对象,但为每个视图调整大小需要同步并大量增加 CPU 使用率。

除了使用AnimationDrawable.

一个附带问题:每次我们使用资源时,android 是否会耗尽内存?例如,如果我创建 20 个 ImageView 并将它们的资源设置为 R.drawable.mydrawable,那么使用的内存是否等于 20 * memory_used_for_decoding_mydrawable?

4

0 回答 0