AnimationDrawable内存使用情况

时间:2012-08-11 17:56:41

标签: android android-animation

我有一个应用程序,其中第一个活动显示加载动画,并且它似乎显着增加了内存使用 - 使用动画,应用程序使用大约30MB,并且没有小于10MB。

相关代码如下:

public void onCreate(Bundle savedInstanceState) 
{
     super.onCreate(savedInstanceState);
     setContentView(R.layout.load_application);
     StartLoadingAnimation();
}

private void StartLoadingAnimation()
{
    frameAnimation = new AnimationDrawable();
    for(int i = 1; i <= 64; i++)
    {
        String index = i < 10 ? "00" + i : "0" + i; 
        int frameIdentifier = getResources().getIdentifier("loading_icon_" + index, "drawable", getPackageName());
        frameAnimation.addFrame(getResources().getDrawable(frameIdentifier), 70);
    }

    ImageView imageCafeLoading = (ImageView) findViewById(R.id.ImageCafeLoading);
    imageCafeLoading.setBackgroundDrawable(frameAnimation);
    imageCafeLoading.post(new LoadingImageStarter());
}

/** Starting the loading image animation */
private class LoadingImageStarter implements Runnable 
{
       public void run() 
       {
            frameAnimation.setOneShot(false);
            frameAnimation.start();
       }
}

似乎在导航到下一个活动时完成活动并不重要,动画的内存使用率仍然高得多。

如何在远离活动或销毁活动时释放此内存?

0 个答案:

没有答案