我只是想知道在移动设置中最好的方法是什么。
我有一个说100 Objects
的列表。这些对象中的每一个都附加了photo
,我将加载为bitmap
。所以我的第一直觉是创建一个Bitmap
属性,当对象被实例化时,我为每个bitmap
加载100 Objects
属性。
我认为这不是一个非常好的方法,因为当我尝试使用listview
和picture
加载title
这些对象时。我的应用从分配到14mb
的{{1}}内存跳转。在一些低端设备上它会立即崩溃。
我只是想知道在这种情况下哪些被认为是最好的做法。
我想要做的另一件事是为对象设置一个方法,根据每个对象的75mb
,在需要时加载bitmap
。想法?
编辑: 问题是,一旦我将位图添加到对象,内存分配就会跳到高位,我需要一种更好的方法来保存对象内图像的引用。图像甚至还没有显示出来。
答案 0 :(得分:1)
在模型中保留位图文件的路径,并在adapter
中获取实际的Bitmap
。
答案 1 :(得分:0)
你无法在内存中保存那么多位图。您可以使用LruCache
来确保应用程序不会崩溃,但这只是为了加快对最新应用程序的检索,而不是将它们全部留在内存中。
最好保留对位图源的引用,并根据需要加载实际的位图,具体取决于您的用例。例如,如果要列出它们,请将RecyclerView
与Picasso
等库一起使用。通过这种方式,您可以让这些组件更好地为您处理内存。