Android Bitmap计算大小 getRowBytes和getByteCount()
2018-03-01 22:09
513 查看
int size = bitmap.getRowBytes() * bitmap.getHeight();
获取大小,Bitmap所占用的内存空间数等于Bitmap的每一行所占用的空间数乘以Bitmap的行数
可以获取Bitmap大小的方法有如下几种:
1. getRowBytes:Since API Level 1
2. getByteCount:Since API Level 12
3. getAllocationByteCount:Since API Level 19
兼容性解决方案:
获取大小,Bitmap所占用的内存空间数等于Bitmap的每一行所占用的空间数乘以Bitmap的行数
可以获取Bitmap大小的方法有如下几种:
1. getRowBytes:Since API Level 1
2. getByteCount:Since API Level 12
3. getAllocationByteCount:Since API Level 19
兼容性解决方案:
public static int getBitmapSize(Bitmap bitmap) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { //SInce API 19 return bitmap.getAllocationByteCount(); } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR1) { //Since API 12 return bitmap.getByteCount(); } return bitmap.getRowBytes() * bitmap.getHeight(); }
Note:
如果位图被重用、解码更小尺寸的其他位图或重新配置,getAllocationByteCount()的计算结果有可能比getByteCount()的结果大一些。相关文章推荐
- Android 计算Bitmap大小 getRowBytes和getByteCount()
- android Bitmap getByteCount和getRowBytes
- android Bitmap getByteCount和getRowBytes
- android Bitmap getByteCount和getRowBytes
- android Bitmap getByteCount和getRowBytes
- android Bitmap getByteCount和getRowBytes
- Android Bitmap 大小计算
- android 计算Bitmap占byte大小,以及Bitmap中像素数的计算,另外再给出一个按尺寸裁剪图片的方法
- Android 计算Bitmap大小
- BitMap的getRowBytes和getByteCount()
- Android之计算缓存大小并且清空缓存
- Android 计算ImageView的大小
- Android应用开发之图片(Bitmap)压缩(一)---------Bitmap与BitmapFactory的认识及图片的存储形式大小的实验
- Android 一张图片(BitMap)占用内存的计算 图片内存优化
- Android BitmapFactory.Options 对图片进行缩放以符合ImageView大小
- Android开发:计算缓存大小并且清空缓存
- android 获取Bitmap位图所占用的内存大小
- Android窗口管理服务WindowManagerService计算Activity窗口大小的过程分析
- android BitMap 设置图片大小
- Android获取屏幕宽高、屏幕密度、手动计算view大小