大源ImageView动画

时间:2011-12-15 09:26:42

标签: android animation view imageview

在内存方面,Android的最佳图像文件格式是什么?推荐使用PNG用于iOS,因为xCode对它有一些魔力。对Android来说它是否相同?

我目前正在开发一款带有多个动画的大型应用程序(屏幕滑动,褪色等)。到目前为止一切运作良好!但是我注意到视图动画,其中视图包含带有(非常大)PNG的ImageView,因为源有点滞后。

显然我可以让PNG更小,但是我还能做些什么来减少ImageView占用的内存量/使动画流畅吗?我知道PNG的文件大小比JPEG大得多,但我看不出这是一个问题,JPEG或PNG(我假设)最终存储为颜色数组,因此它们都会占用相同的内存。由于较少的循环解压缩,PNG可能更适合加载。我只是假设,我对图像文件格式的了解是空的。

或者还有其他什么导致滞后?是否缩放位图以适应动画期间每个onDraw()的视图,因此我应该在将代码放入ImageView之前在代码中缩放位图吗?

谢谢,

2 个答案:

答案 0 :(得分:2)

Android支持的格式为:PNG,JPG和GIF(也是9.png)。 如dev guide

中所述,推荐的是PNG

所有这些都作为Bitmap存储在内存中,所以最重要的是颜色deph,如下所示:

BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.RGB_565;
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon, options);

更多信息:stackoverflow

答案 1 :(得分:0)

并添加(蜂窝后):

<application 
    android:largeHeap="true"
    ...

清单文件:=)

感谢亲爱的朋友:)