-->

通过在Android的帧动画图像帧的最佳途径(Best Way to Animate images

2019-10-18 15:50发布

我有3套50幅的图像的,我必须创建动画用于Android应用每组图像。 我能够创建该动画使用下面的方法第一组50个的图像的简单的应用程序,

添加了动画列表中的XML文件绘制,并呼吁它使用frameAnimation.start()。

清单文件真”:这个方法不起作用,直到我把下面的“largeHeap =机器人”。

我不知道这是否是动画图像(如果我们有更多的图像的数量,像60多尺寸的每个图像KB,图片为JPG格式)或不是好办法

我浏览,我发现,如果我们能够清除内存,如果我们能够保持在较少的内存映像的数量,那么我们的应用程序将做工非常精细。 所以我想知道如何清除内存?

请让我知道,我需要遵循不同的方法来制作动画比我上面所解释的其他图像,这样我就可以清除内存。

谢谢你的帮助。

Answer 1:

    Do this way..
    ---------------------            
         ImageView img = (ImageView)findViewById(R.id.some layout);
         AnimationDrawable frameAnimation =    (AnimationDrawable)img.getDrawable();
         frameAnimation.setCallback(img);
         frameAnimation.setVisible(true, true);
         frameAnimation.start();


    and to add animation you can do something like 
   -----------------------------------------------
  <animation-list   android:id="@+id/my_animation" android:oneshot="false" 
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/frame1" android:duration="150" />
    <item android:drawable="@drawable/frame2" android:duration="150" />

 </animation-list>


Answer 2:

寻找到几个职位,做大量的研究后,我终于结束了修改的ImageView图像编程模拟帧动画。 这样,我只是保持在高速缓存中三幅图像在时间(以前,当前和下一个)的任何一点。 我希望这将是有用的人。



Answer 3:

这是不以处理像Android的自身方式的框架的大量图像,因为它会引发可怕的“内存不足”异常一件好事。

清除内存本身是不可能的。 这样做的最好的解决方法是应用程序的正确处理位图。

我不知道,但你可能要检查的PhoneGap 。

它的HTML5引擎,我们之前用来创建一个游戏。 通过绘制到画布本身,我们已经重新创建帧动画吧。 它只是需要Webdev的技能虽然。



文章来源: Best Way to Animate images frame by frame in Android