随笔分类 - Cache | Optimiz
摘要:最近在做一个照片墙的应用,涉及到很多知识,其中难点在于如何应对数量庞大的图片,这就涉及到内存管理的知识了。今天介绍的工具是DDMS中自带的Heap,它可以显示出当前引用占用的内存,剩余的内存等信息。下面我们就来使用它吧~首先是进入DDMS,然后运行应用,这时候就能在左边的区域看到应用的包名了。选中要...
阅读全文
摘要:很多情况下,我们的视图可能会随着用户的操作的不同而变化,比如一个新的页面包含多个控件,但仅仅在用户点击这个按钮后,所有的控件才能完全显示。也就是说一上来可能就显示一个控件,点击按钮后把其他隐藏的控件再显示出来。一般情况下我们通过改变View的visible属性来设置view的可见性,但它不算是延...
阅读全文
摘要:Volley它非常适合去进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如说下载文件等,Volley的表现就会非常糟糕。所以不建议用它去进行下载文件、加载大图的操作。有人可能会问,如果我服务器中的图片都挺大的,activity中listview要加载这些图片,是不是不能用这个框...
阅读全文
摘要:我们一般写findViewById都要加个强制转换,感觉很麻烦,现在你可以在你的BaseActivity中写入如下方法:@SuppressWarnings(“unchecked”)public final E getView (int id) { try { return (E...
阅读全文
摘要:DiskLruCache这个类我记忆中是来自Google的一个开源项目,叫做BitmapFun,目的是更方便的加载bitmap。项目的源码:https://developer.android.com/training/displaying-bitmaps/index.html,这个项目中就有一个Di...
阅读全文
摘要:LruCache是android提供的一个缓存工具类,其算法是最近最少使用算法。它把最近使用的对象用“强引用”存储在LinkedHashMap中,并且把最近最少使用的对象在缓存值达到预设定值之前就从内存中移除。其在API12被引进,低版本可以用support包中的类。一、分析源码这个源码是从网上找的...
阅读全文
摘要:本文转自:http://droidyue.com/blog/2014/11/08/understanding-garbage-collection-output-messages-in-android/感谢作者的翻译!!!如果你是一名Android开发者并且常常看程序日志的话,那么下面的这些信息对你...
阅读全文
摘要:最标准的写法,就是为每一个AdapterView的子View新建一个对应的ViewHolder,同时声明为prtivate final static。ViewHolder类中定义各种成员变量。 public final static class ViewHolder{ Image...
阅读全文
摘要:我们在实际的项目过程中肯定会遇到需要加载大量网络图片的情况,这些图片经常是放在listview或者是GridView中显示。遇到OOM的问题也是很正常的。下面我分析下会遇到的问题:1.滑动列表的时候开启很多线程,有些图片已经被移动到屏幕之外了,但线程仍旧还在进行。2.法确保当前视图在结束时,分配的视...
阅读全文
摘要:Universal-Image-Loader这个开源框架又来给我们造福了,它是一个图片加载框架,主要强大在于可以用于网络等图片源的加载,并且有多重缓存机制。先给出其项目地址:https://github.com/nostra13/Android-Universal-Image-Loader一、简...
阅读全文
摘要:本文是从这里看到的:http://www.2cto.com/kf/201404/296960.html如果我们想宏观的看看自己的布局,Android SDK中有一个工具HierarchyView.bat,可以分析出模拟器中运行程序的界面设计层次;我们可以用此工具来分析自己的应用布局是否有优化的空间,...
阅读全文