There is a useful method bitmap.getByteCount()
since API level 12. But how to get same value in API 11?
问问题
3383 次
2 回答
19
正如 dmon 所提到的,根据这个问题 bitmap.getByteCount()
的评论,这只是一个方便的方法,它返回bitmap.getRowBytes() * bitmap.getHeight()
. 因此,您可以改用自定义方法:
public static long getSizeInBytes(Bitmap bitmap) {
return bitmap.getRowBytes() * bitmap.getHeight();
}
于 2012-06-21T13:46:32.460 回答
7
最好只使用支持库:
int bitmapByteCount=BitmapCompat.getAllocationByteCount(bitmap)
或者,如果您想自己做:
public static int getBitmapByteCount(Bitmap bitmap) {
if (VERSION.SDK_INT < VERSION_CODES.HONEYCOMB_MR1)
return bitmap.getRowBytes() * bitmap.getHeight();
if (VERSION.SDK_INT < VERSION_CODES.KITKAT)
return bitmap.getByteCount();
return bitmap.getAllocationByteCount();
}
于 2015-07-29T07:46:20.957 回答