2012-08-23 105 views
0

我正在开发一个动态壁纸,其中基本上我围绕80帧(JPG图像)旋转 - 图像大小为80KB左右(800×1200维度) - 总图像文件夹大小约为6 MB 。图像循环相当平稳,但只要我缩放图像(我正在这样做,以在较小的屏幕上显示图像) - FPS去折腾 - 有关如何有效地缩放图像的任何想法?动态壁纸FPS问题

我想到两件事开始 - 但它不是为我工作得好:

  1. 我认为把所有的缩放图像以Bitmap的ArrayList,但它给人一种VM Budget error(试图做bitmap.recycle()太 - 但它给出了另一个错误,如trying to use recycle image)。任何想到这一点将不胜感激。
  2. 我虽然把缩放的图像放在SD卡中 - 但是,不知道为什么,但FPS正在受到影响 - 否则这可能是我可以检测手机大小并可以通过互联网下载图像的最佳方式并放入SD卡。但是,正如我所说,即使这样做效果不好。

如果任何人都可以使用这两种方法中的任何一种,或者可以指出一种更好的方式 - 那应该很棒。

回答

0

首先尝试对图像进行采样然后对其进行缩放。这会减少你的内存大小。其次存储此图像并在那里使用该图像。您可以通过here找到成像器的采样和缩放比例。让我知道你是否需要更多帮助。

+0

我已经完成了缩放和采样 - 但这些都需要时间 - 而且当我执行任何这些操作时FPS都会受到影响。 –

+0

您必须每次都致电该问题。您应该在用户更改方向时对其进行缩放。 –

+0

我的基本图像是1280 x 800 - 所以如果我想在480 x 800分辨率的移动设备上加载我的lwp,我必须缩放图像 –