Android LruCache和Animationdrawable
我有一个活动,在这个活动中我做了一个动画。 但是如果有内存泄漏,那么我使用LruCache 我的问题是a如何在我的动画中设置来自LruCache的图像?LruCache:Android LruCache和Animationdrawable,android,Android,我有一个活动,在这个活动中我做了一个动画。 但是如果有内存泄漏,那么我使用LruCache 我的问题是a如何在我的动画中设置来自LruCache的图像?LruCache: private LruCache<Integer, Bitmap> mBitmapCache; public final static Integer[] resIdList = new Integer[] { R.drawable.image0, R.drawable.image1, R.dra
private LruCache<Integer, Bitmap> mBitmapCache;
public final static Integer[] resIdList = new Integer[] {
R.drawable.image0, R.drawable.image1, R.drawable.image2,
R.drawable.image3, R.drawable.image4, R.drawable.image5,
R.drawable.image6, R.drawable.image7, R.drawable.image8,
R.drawable.image10};
private void initializeCache() {
final int memClass = ((ActivityManager)getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
mCache = new LruCache<Integer, Bitmap>(1024 * 1024 * (memClass / 4)) {
@SuppressLint("NewApi")
protected int sizeOf(String key, Bitmap value) {
return value.getByteCount();
}
};
int imgId = 0;
for (int i = 0; i < resIdList.length; i++) {
imgId = resIdList[i];
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), pingImgResId);
mBitmapCache.put(pingImgResId, bitmap);
}
私有LruCache-mBitmapCache;
公共最终静态整数[]剩余列表=新整数[]{
R.drawable.image0,R.drawable.image1,R.drawable.image2,
R.drawable.image3,R.drawable.image4,R.drawable.image5,
R.drawable.image6,R.drawable.image7,R.drawable.image8,
R.drawable.image10};
private void initializeCache(){
final int memClass=((ActivityManager)getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
mCache=new-LruCache(1024*1024*(memClass/4)){
@SuppressLint(“新API”)
受保护的int-sizeOf(字符串键、位图值){
返回值。getByteCount();
}
};
int imgId=0;
对于(int i=0;i
LruCache:
private LruCache<Integer, Bitmap> mBitmapCache;
public final static Integer[] resIdList = new Integer[] {
R.drawable.image0, R.drawable.image1, R.drawable.image2,
R.drawable.image3, R.drawable.image4, R.drawable.image5,
R.drawable.image6, R.drawable.image7, R.drawable.image8,
R.drawable.image10};
private void initializeCache() {
final int memClass = ((ActivityManager)getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
mCache = new LruCache<Integer, Bitmap>(1024 * 1024 * (memClass / 4)) {
@SuppressLint("NewApi")
protected int sizeOf(String key, Bitmap value) {
return value.getByteCount();
}
};
int imgId = 0;
for (int i = 0; i < resIdList.length; i++) {
imgId = resIdList[i];
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), pingImgResId);
mBitmapCache.put(pingImgResId, bitmap);
}
私有LruCache-mBitmapCache;
公共最终静态整数[]剩余列表=新整数[]{
R.drawable.image0,R.drawable.image1,R.drawable.image2,
R.drawable.image3,R.drawable.image4,R.drawable.image5,
R.drawable.image6,R.drawable.image7,R.drawable.image8,
R.drawable.image10};
private void initializeCache(){
final int memClass=((ActivityManager)getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
mCache=new-LruCache(1024*1024*(memClass/4)){
@SuppressLint(“新API”)
受保护的int-sizeOf(字符串键、位图值){
返回值。getByteCount();
}
};
int imgId=0;
对于(int i=0;i
img.setBackgroundResource(R.drawable.animation);AnimationDrawable frameAnimation=(AnimationDrawable)img.getBackground();frameAnimation.start();如何获取动画图像??这是您的答案还是您的问题?img.setBackgroundResource(R.drawable.animation);animationdrawavable frameAnimation=(AnimationDrawable)img.getBackground();frameAnimation.start();我如何获得动画图像??这是你的答案还是你的问题?请为你的问题添加详细信息,用这么少的信息现在很难帮助你。请为你的问题添加详细信息,用这么少的信息现在很难帮助你。