-1
  import android.app.Activity;

import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;


import android.widget.ImageView;

public class GenieComesOut extends Activity 
{

ImageView genie;
AnimationDrawable genieout;

@Override
 public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.genie_out);
        genie = (ImageView)findViewById(R.id.genieout);

        genieout = (AnimationDrawable) genie.getDrawable();
        genie.post(new Runnable() {public void run() {genieout.start();}});
    }

我让动画开始运行,我只能在一个帧中容纳 20 帧,比我得到的 VM 不会分配更多,这些是全屏图像,我还剩下大约 50 帧,所以,我可以制作一个新的 /anim/xml切换到 ImageView 垃圾收集并运行另外 20 帧,这样做的正确方法是什么?感谢您的时间

4

1 回答 1

2

如果真的是全屏动画,您应该考虑将动画转换为视频。然后可以轻松播放视频,并且不会占用您的内存。

以下是支持的格式列表:Android 支持的媒体格式。您可以使用 H264 或 3GP,尝试看起来最好并且性能更好的。

于 2012-11-16T16:41:45.403 回答