我的listview项目使用两个Drawables。资产是checked.png,另一个是unchecked.png。取决于项目的状态,其中一个将被使用。为了减少空间,我想在listviewitem类中将它们设置为静态。
private static Drawable checked = getResources().getDrawable(checked_resourceId);
然后,只有一个已检查的drawable用于所有listview项目。但是,它可能会导致内存泄漏,因为它是静态的。我想知道我应该做什么,既节省空间又避免内存泄漏。或者更一般地说,如何缓存内容(如drawables或大型对象)以减少内存使用量,同时不会因为引用而导致内存泄漏。