版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/NianandShao/article/details/81941816
相关知识
8bit == 1byte 比如 一张32位的图片等于4byte 一个像素占4byte
占用空间和占用内存,单位一样,本质不一样
占用空间:占用磁盘上的空间
占用内存:加载到内存的空间 图片占用内存算法 (宽*高*byte)/1024 = kb/1024 = mb,不是图片多大就占用内存多大
比如 800*600*4 = 1920000bit / 1024 = 1875kb / 1024 = 1.83mb
getRowBytes 获取位图一行所占用的字节
getByteCount 获取位图所占用的字节 getRowBytes*getHeight == getByteCount
生成BItmap方法
decodeFile 从给定的文件路径pathName生成bitmap,最后是用FileInputStream生成
decodeFileDescriptor 从FileDescriptor解析生成Bitmap,比decodeFile省内存,将InputStream强转FileInputStream,FileInputStream使用getFD,获取FileDescriptor
decodeResource 根据资源ID获取Bitmap
decodeStream 将输入流解析成Bitmap
decodeByteArray 将字节数据解析成Bitmap,decodeByteArray(bytes,0,bytes.length)