我可以在我的应用中放多少张图片?

时间:2013-09-07 14:14:50

标签: android image gallery heap slideshow

我目前在我的应用程序中有一个工作室,上面有大约8张图片。之前我有一个因为过载而导致崩溃的错误(类似的东西,不确定)。

这是因为我的图片文件太大,所以我减少了它的工作量。所以我的主要问题是我可以将多少图片放入我的应用程序中。

我希望有大约5个屏幕(活动)和一些滚动图片 如果它再次崩溃,我不想开始更改我的应用程序

也有人知道如何在滚动图片时添加过渡,因为它看起来也很花哨

2 个答案:

答案 0 :(得分:2)

一切都取决于你管理图片的方式。要保存内存(并增加加载的图像数量),您应该加载已调整大小的图片。

您可以在加载时对图片进行二次采样:

BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inSampleSize = 2;
BitmapFactory.decodeResource(res, id, opts);

这将加载缩放其原始大小的1/2的图片(请记住,子采样仅适用于2个值的功率)。您可以将图片加载到小于其显示区域的位置,然后让ImageView将其放大。

如果您加载的图片仍然太大,可以使用Bitmap.createScaledBitmap()进行更多缩放。

你应该知道,Honeycomb之前的Android不会回收像Honeycomb Android那样的位图。一旦不再使用位图,就应该立即调用Bitmap.recycle()来清除内存。

对于图像滚动,您可以使用ViewPager

进一步阅读:http://developer.android.com/training/displaying-bitmaps/index.html

答案 1 :(得分:1)

您可以在应用中添加的图片数量没有严格的限制。以股票库应用程序为例,我认为自己是一个相对较轻的图片获取者,但我的画廊中仍然有数百张图片。如果您遵循Bitmap best practices,则不应遇到任何内存问题,并且您应该能够包含任意数量的图像。