我有一个显示小位图的视图,这在我的应用程序的许多地方(特别是列表视图)中使用。每次使用BitmapFactory.decodeResource(resource, id)
创建该视图的实例时,我正在加载该位图。我意识到我可以通过将一次位图加载到一个静态变量中(以便视图的所有实例都可以重用它)并且确实可以为每个视图实例节省大约2-4毫秒的时间,从而提高性能。我的问题是,以这种方式使用静态变量会导致Android中的任何类型的内存泄漏?我很担心,因为我还没有发现任何其他使用静态变量来存储位图的例子。在静态变量中存储位图资源
后续问题:How to keep a Bitmap in memory
报价罗曼盖伊“当被拉伸连接到一个视图,该视图在上面的代码片段中,这意味着drawable有一个对TextView的引用,它本身有一个对活动(Context)的引用,它依次引用几乎所有的东西(取决于你的代码。)“...所以保持静态会导致内存泄漏。 – Nitin 2012-01-11 05:46:59
Thanks @ 0cool,我看过那篇文章,但我不确定'android.graphics.Bitmap'(不是'android.graphics.drawable.BitmapDrawable')也是'Drawable'。那确实是这样吗? – 2012-01-11 16:37:17
嗨,@AbdullahJibaly在使用位图之前,我们是否需要导入或扩展某些东西?正如我在做'位图设备;'和我的IDE给一个错误,_Bitmap无法解析为type_。提前致谢。 – Learner 2017-02-06 06:12:54