listview异步加载优化 在APP应用中,listview的异步加载图片方式能够带来很好的用户体验,同时也是考量程序性能的一个重要指标。关于listview的异步加载,网上其实很多示例了,中心思想都差不多,不过很多版本或是有bug,或是有性能问题有待优化。有鉴于此,本人在网上找了个相对理想的版本并在此基础上进行改造,下面就让在下阐述其原理以探索个中奥秘,与诸君共赏…贴张效果图先:
android大包环境编译不能获取第三方jar包资源文件 前几天碰到一个第三方拼音jar调用出问题折腾了很久,之前一直是正常的。一定位才知道是在获取拼音jar包时有个资源文件unicode_to_hanyu_pinyin.txt无法找到,抛了个异常。环境变了,之前一直的eclipse下编译的apk放到大包,最近项目需要放在大包环境下编译,打开apk文件与eclipse下编的apk做了对比,资源文件不见了。然后慢慢的search……有说android大
Parcelable接口的使用 什么是Parcelable ? Parcelable,定义了将数据写入Parcel,和从Parcel中读出的接口。一个实体(用类来表示),如果需要封装到消息中去,就必须实现这一接口,实现了这一接口,该实体就成为“可打包的”了。 Parcelable 传递对象 Android序列化对象主要有两种方法: 1.实现Serializable接口,
内联函数 (1)什么是内联函数?内联函数是指那些定义在类体内的成员函数,即该函数的函数体放在类体内。(2)为什么要引入内联函数?当然,引入内联函数的主要目的是:解决程序中函数调用的效率问题。另外,前面我们讲到了宏,里面有这么一个例子:#define ABS(x) ((x)>0? (x):-(x))当++i出现时,宏就会歪曲我们的意思,换句话说就是:宏的定义很容易产生二意性。
柔性数组 C99 中,结构体中的最后一个元素允许是未知大小的数组,这就叫做柔性数组成员,但结构中的柔性数组成员前面必须至少一个其他成员。柔性数组成员允许结构中包含一个大小可变的数组。sizeof 返回的这种结构大小不包括柔性数组的内存。包含柔性数组成员的结构用malloc ()函数进行内存的动态分配,并且分配的内存应该大于结构的大小,以适应柔性数组的预期大小。typedef struct st_
extern与static分析 本文转载链接:http://blog.csdn.net/feliciafay/article/details/12251923本文参考了《Linux一站式编程》第 19 章 汇编与C之间的关系,第20章链接详解。这里主要区分static和external的在链接属性上的不同,它们的其它用法不涉及。static和external可以修饰变量也可以修饰函数,下文主要分成这两块来讲述。
Messenger 实现Activity与Service通讯、进程通讯 2011-05-07 15:49 Messenger 实现Activity与Service通讯、进程通讯信使 主要用于进程通讯详见SDK android.os.Messenger 一、Activity通过Messenger发送信息给Service 1、创建项目Messenger 包名:com.Messenge
android的frameworks层键盘事件处理流程分析 android的frameworks层键盘事件处理流程分析事件处理流程1)InputManager负责读取事件并把事件送到frameworks的java层2)WindowManagerService里会有一个InputMonitor类来监听事件变化并做相应的分发处理。3)在WindowManagerService会有一个WindowManagerPolicy来做消息拦截处理。
ubuntu12.04屏幕亮度调节设置方法 装好ubtuntu后亮度无法调节,总是最亮的,很刺眼。网上看到的方法:shell命令:sudo gedit /etc/default/grub打开文件后GRUB_CMDLINE_LINUX=""改成GRUB_CMDLINE_LINUX="acpi_backlight=vendor“然后update。执行shell命令:sudo update-
为android开放类增加自定义成员方法,解决@hide问题 android SDK中有些JAVA类是开放的,有些是不开放的,API同样如此。这里所谓开放的类或API,只是javadoc的范畴,并不是java中public和private,也就是说,对于源码的编译无所谓,但是对android的上层应用有影响,因为非开放的类或API,android上层应用无法直接访问。 类或API是否开放,是通过doc的注释{@hide}来控制的。比如android