摘要: 1. ListView需要设置adapter,它的item是通过adapter的方法getView(int position, View convertView, ViewGroup parent)获得的。2. ListView中只有第一屏的item需要新建,它的引用会被存在RecycleBin对象内,在拖动时后面的item实际上是重从了之前创建的item。3. 根据上述,ListView在需要显示item时,最开始第一屏时,getView(int position, View convertView, ViewGroup parent)的第二个参数为null,显示第二屏或者回滚显示第一屏时, 阅读全文
posted @ 2012-06-24 20:53 Java之旅 阅读(118) 评论(0) 推荐(0) 编辑
摘要: Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M。但是Android采用的是Java语言编写,所以在很大程度上,Android的内存机制等同于Java的内存机制,在刚开始开发的时候,内存的限制问题会给我们带来内存溢出等严重问题。在我们不使用一些内存的时候,我们要尽量在Android或者其他平台上避免在运行其他程序时,保存必要的状态,使得一些死进程所带来的内存问题,应该尽量在关闭程序或者保存状态的时候释放掉,这样能提高系统在运行方面的流畅性。Android的内存主要表现在:1.在Android平台上,长期保持一些资源的引用,造成一些内存不能释放,带来的内存泄露问题很多 阅读全文
posted @ 2012-06-24 20:52 Java之旅 阅读(1856) 评论(1) 推荐(0) 编辑
摘要: 1、将图片转化为缩略图再加载:1 BitmapFactory.Options options = new BitmapFactory.Options();2 options.inSampleSize = 2;3 Bitmap img = BitmapFactory.decodeFile("/sdcard/1.png", options); 该段代码即是读取1.png的缩略图,长度、宽度都只有原图片的1/2。图片大小减少,占用的内存自然也变小了。这么做的弊端是图片质量变差,inSampleSize的值越大,图片的质量就越差。由于各手机厂商缩放图片的算法不同,在不同手机上的缩放 阅读全文
posted @ 2012-06-24 20:41 Java之旅 阅读(1485) 评论(1) 推荐(0) 编辑