渲染性能 Android UI的工作分两阶段: 1.在UI线程Record View#draw 2.在RenderThread线程DrawFrame(RenderThread:使用GPU资源的线程) 第一阶段随着Vi...
阅读(34) 评论(0)
主要思想是这样的:将倒计时CountDownTimer放在Service里面进行,每过一秒就一条发广播,在主Activity里注册广播,收到广播后更新UI。 一、写一个类CodeTimerService继承自Service,重写onSt...
阅读(29) 评论(0)
1为什么要做性能优化? 手机性能越来越好,不用纠结这些细微的性能? Android每一个应用都是运行的独立的Dalivk虚拟机,根据不同的手机分配的可用内存可能只有(32M、64M等),所谓的4GB、6GB运行内存其实对于我们的应用不是...
阅读(38) 评论(0)
用户在调用层(Activity或Service中),发起一个网络请求,该请求肯定包含url,请求参数(requestParameter),以及我们需要给调用层提供一个请求成功或失败以后回调监听的接口dataListener(这一点与Vo...
阅读(23) 评论(0)
1、Default模式,也是没有设置缓存模式时的默认模式 这个模式实现http协议中的内容,比如响应码是304时,当然还会结合E-Tag和LastModify等头。 StringRequest request = new Stri...
阅读(34) 评论(0)
1. 一些基本概念 在开始之前,我们需要声明一件重要的事情是:我们不是在讨论在运行时通过反射机制运行处理的注解,而是在讨论在编译时处理的注解。注解处理器是 javac 自带的一个工具,用来在编译时期扫描处理注解信息。你可以为某些注解注册...
阅读(50) 评论(0)
 android的selector对于android开发者而言再熟悉不过了,只要定义一个drawable目录下定义一个selector的xml文件,在布局文件中引用这个xml文件或者在代码中setBackgroundDrawa...
阅读(36) 评论(0)
声明几个属性值: <declare-styleable name="GridImageViewGroup"> <attr name="childVerticalSpace" format="dimensio...
阅读(33) 评论(0)