标签: android kotlin android-sharedpreferences
我正在使用cards(cardView)并尝试将图像存储在数组中(数组到字符串;将其存储在缓存中,并在需要时解压缩回数组)。我的问题是:将图像存储在数组中最方便的方法是什么?
cards
存储位图(bitmapToString等)?将位图(我从图库和相机中获取图像)转换为URI?绝对路径?
图像数量很少(3-4),所以,我想,数据库中没有必要。
答案 0 :(得分:2)
Android Bitmap对象不适合存储在Java数组中 - 它们是非常大的对象,因此您冒着OutOfMemoryException的风险。如果不小心,很容易造成内存泄漏。
Bitmap
OutOfMemoryException
如果您必须从库中获取一些照片Bitmap并将其保留在您的应用中,则通常使用的其中一种模式是将Bitmap写入应用的内部存储空间(涵盖{ {3}}
如果您需要对存储的照片进行引用,则可以保存文件名或代表照片或图像的Uri。
Uri
然后,使用here或Picasso等库来解决将Bitmap等加载到ImageView的问题。您可以使用这些文件从本地文件系统或在线加载。
ImageView