博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 计算Bitmap大小
阅读量:6695 次
发布时间:2019-06-25

本文共 842 字,大约阅读时间需要 2 分钟。

今天使用LruCache写demo的时候,要获取Bitmap的大小

于是就用到了

 

return bitmap.getRowBytes() * bitmap.getHeight();// 获取大小并返回

//Bitmap所占用的内存空间数等于Bitmap的每一行所占用的空间数乘以Bitmap的行数
为什么不用bitmap.getByteCount()呢?
因为getByteCount要求的API版本较高,考虑到兼容性使用上面的方法
1、getRowBytes:Since API Level 1
2、getByteCount:Since API Level 12
查看Bitmap源码
  

[java]   
 
 
  1. public final int getByteCount() {  
  2.       return getRowBytes() * getHeight();  
  3.   }  

所以API 12 以后
getByteCount() = getRowBytes() * getHeight();
在计算Bitmap所占空间时上面的方法或许有帮助。

 

补充:

 

[java]   
 
 
    1. /** 
    2.   * 得到bitmap的大小 
    3.   */  
    4.  public static int getBitmapSize(Bitmap bitmap) {  
    5.      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {    //API 19  
    6.          return bitmap.getAllocationByteCount();  
    7.      }  
    8.      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR1) {
      //API 12  
    9.          return bitmap.getByteCount();  
    10.      }  
    11.      // 在低版本中用一行的字节x高度  
    12.      return bitmap.getRowBytes() * bitmap.getHeight();                //earlier version  
    13.  }  

转载地址:http://zkvoo.baihongyu.com/

你可能感兴趣的文章
CentOS下python-mysqldb安装
查看>>
对SqlServer2008中的日志进行截断的方法
查看>>
web service
查看>>
OpenXLive 0.9.9 SDK发布,增加对SNS的支持
查看>>
linux下安装oracle 11g R2
查看>>
使用jQuery Mobile移动开发框架将博客网站快速转化为Mobile网站
查看>>
varnish-cache使用
查看>>
在没有数据集的情况下使用数据表
查看>>
黄聪:PHP获取MAC地址(转)
查看>>
设计师和开发人员更快完成工作需求的35个惊人的jquery插件教程(下)
查看>>
关于SQLSERVER的全文目录跟全文索引的区别
查看>>
HTTP_POST———使用mysql_udf与curl库完成http_post通信模块(mysql_udf,multi_curl,http,post)...
查看>>
POJ 3613
查看>>
POJ 3185 The Water Bowls(高斯消元)
查看>>
把数组排成最小的数
查看>>
fork的微妙问题1
查看>>
Android Drawable绘图学习笔记
查看>>
【Andorid X 项目笔记】禁用ListView的Fling功能(1)
查看>>
[转]详细讲解提高数据库查询效率的实用方法、外键关于性能
查看>>
jquery插件开发导读
查看>>