Java Android存储位图数组
我想知道哪一个是Android中存储位图的最佳阵列实现选择。将位图存储在Java Android存储位图数组,java,android,bitmap,android-canvas,Java,Android,Bitmap,Android Canvas,我想知道哪一个是Android中存储位图的最佳阵列实现选择。将位图存储在ArrayList中是一个好主意还是一个不好的解决方案 我试图在我的应用程序中以编程方式存储5个不同的位图,并将它们存储在数组中,然后将它们绘制到电子画布上,但它不能正常工作 以下是我正在做的: //beginning ArrayList<Bitmap> temp = new ArrayList<Bitmap>(); //in some function where mBitmap is been
ArrayList
中是一个好主意还是一个不好的解决方案
我试图在我的应用程序中以编程方式存储5个不同的位图,并将它们存储在数组中,然后将它们绘制到电子画布上,但它不能正常工作
以下是我正在做的:
//beginning
ArrayList<Bitmap> temp = new ArrayList<Bitmap>();
//in some function where mBitmap is been created
temp.add(mBitmap);
//in my custom class which extends View
Bitmap bm = Bitmap.createBitmap(temp.get(temp.size()-1));
mCanvas.drawBitmap(bm);
invalidate();
//开始
ArrayList temp=新的ArrayList();
//在创建mBitmap的某些函数中
温度添加(mBitmap);
//在扩展视图的自定义类中
位图bm=Bitmap.createBitmap(temp.get(temp.size()-1));
绘制位图(bm);
使无效();
但是temp中的位图从未添加到mymCanvas
你知道为什么以及哪种方法是在Android/Java中以数组形式存储位图的最佳方法吗?更好地用于位图缓存。请阅读这不是在ArrayList中存储位图的最佳方法,请使用LruCache和软引用
LruCache<String, SoftReference<Bitmap>> cache;
cache = new LruCache<String, SoftReference<Bitmap>>(8*1024*1024)
LruCache缓存;
缓存=新的LruCache(8*1024*1024)
LruCache适用于API LEVEL 12,我使用的是API LVL 7。您可以使用android,虽然这在理论上可以回答这个问题,但我们希望您在回答中包含链接文章的基本部分,并提供详细信息。如果做不到这一点,答案将面临链接腐烂的风险。