0

其中每个页面都是一个片段,其中设置了不同的图像作为背景。因为我需要确保它平滑滚动而没有延迟,所以我已将 offscreenpage 设置为 20(viewpager 中的项目数),但我经常收到此错误:

   java.lang.OutOfMemoryError: bitmap size exceeds VM budget    

我已经将图像压缩到最大(压缩 JPEGS),知道如何解决这个问题吗?

4

3 回答 3

1

在 Android 开发者网站的培训部分有一篇不错的文章:http: //developer.android.com/training/displaying-bitmaps/index.html ...它向您展示了如何在您的 android 应用程序中使用缓存机制。你可以在你的ViewPager实现中采用它。

于 2013-03-26T20:35:08.600 回答
0

当您切换片段时,我会动态加载/卸载背景图像。它们应该加载得足够快以至于不会注意到,特别是如果您使用动画来隐藏过渡(淡入/淡出)。或者更好的是,加载 4 或 5 个(每个方向 2 个),这样只有在快速滚动时才会看到渐变。

于 2013-03-26T20:24:39.437 回答
0

位图大小取决于图像的像素密度。尝试减少背景图像 MPx。

于 2013-03-26T20:33:24.013 回答