Bitmap处理 之一 简介

来源:互联网 发布:人工智能编程语言 编辑:程序博客网 时间:2024/06/04 18:38

众所周知 Android 内存分配比较蛋疼,过多的加载Bitmap,如果不处理好会造成很头疼的问题---------OutofMemoryError.

造成这个问题的大致就那么几个原因:

第一:移动设备的资源是有限的,对于单个应用程序,系统虚拟机通常会分配16M,当然现在基本都是32M,甚至有64M的。但是资源还是有限制的,需要注意。

第二:Bitmap本身就会消耗很大内存,特别是色彩丰富的,比如单反相机拍的,像素高的手机拍的照片都会很大。官方文档给了个例子。一台Galaxy Nexus手机,拍张照片为2592*1936像素,如果加载这张图片则需要消耗的内存为2596*1936*4大约为19M。几张程序就崩溃了。

第三:一般来说Android程序会频繁的加载几张图片,比如一些控件:"ListView,GridView,ViewPager..."。用户使用中会经常的滑动屏幕,会频繁的加载不同的图片,如此处理好图片的问题就十分重要了,不光是程序的稳定性,图文更能提高用户体验。

一下几篇文章是我通过阅读官方API的理解,分为5个小节。

0 0
原创粉丝点击