自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 ListView懒加载

预加载也就是在我将要使用的时候进行加载,也就是提前读。 懒加载就是我在什么时候使用什么时候加载。当我们的item的布局如果不是很复杂可能感觉不到卡顿等,如果item的getView方法做了很多复杂操作,比如Glide请求数据,更改text,可见度等,滑动的时候还在做这些工作就会特别卡。思路: 我们可以设置一个速度的阈值,当小于该速度或者ListView静止时就开始加载。 @Override

2017-07-11 17:41:46 1221

原创 Android RecycleView多Item实践

RecycleViewrecycleView功能强大设置一下touchHelper可以支持侧滑删除,拖拽等。类结构RecycleView的Adapter必须要有一个ViewHolder与之对应今天我们所设计的就是尽量通用的一个Adapter。ViewHolder的基类public class BaseViewHolder extends ViewHolder{ BaseViewHolder(

2017-06-29 16:21:27 334

原创 Android 电量探析

电量管理原因 CPU**检查死锁** 死循环 GPU 网络传输 每一次数据传输都会导致无线电波消耗大概20秒时间来提取电能 Full power:当无线连接被激活的时候,允许设备以最大的传输速率进行操作。 Low power:一种中间状态,对电量的消耗差不多是 Full power 状态下的50%。 Standby:最小的能量状态,没有被激活或者需求的网络连接 检查 adb工具adb shell

2017-06-06 16:25:21 251

原创 Android UI 分析工具篇

Android UI 探析介绍一般不管是游戏还是App都会要求FPS(每秒帧率)不能低于30,如果低于30就会产生不顺畅的感觉。App的性能目标为60FPS。也就是一帧在16ms = 1000ms/60的时间内处理完。如果处理不完则就会出来drop frames的情况,可在logcat里面查看表现 UI执行动画 滑动ListView Activity或者fragment切换时的卡顿 原因 layou

2017-06-06 15:49:37 762

原创 Android(7)消息通信

Android真的不能在子线程操作UI吗很多很多很多很多。。。文章,书籍就会说一句,3.0之后将耗时操作必须放到子线程完成,主线程主要用来操作或者更新UI,但是我们深入分析其实一种极端情况是可以访问的。 看如下代码: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceSt

2017-04-22 01:29:25 292

原创 Android(6)Broadcast Receiver总结

Receiver通常我们会用Recevier实现将消息进行广播出去,这时具体的操作流畅我们不行哟啊了解,但是如果认识到底层的实现,相信在以后的Coding中会减少自己挖坑的次数= =。Broadcast Receiver简介广播接收器是可以静态在Manifast中注册,也可以通过代码动态注册,但是动态注册的广播必须进行解注册。 在我们对接收器进行注册时可以声明过滤器,以表明我需要接受哪些信息。In

2017-04-19 00:31:59 267

原创 Android(5)Service总结

Service创建过程service一共有两种启动方式,一种为Bind绑定方式,这种方式一般用于与其他组件之间的交互,另一种方式是启动方式Start,这种方式一般用于执行后台任务。当然你也可以两种方式一起使用。startServiceService的创建使用ContextImpl,通过调用它的房网完成第一步操作。 之后会调用AMS的startService,然后是ActiveServices,这个

2017-04-16 10:01:34 265

原创 Android(4)Activity总结之二

Activity启动模式占位,后期更

2017-04-16 09:33:24 316

原创 心路历程

2014年 - - > 我好吊啊,14000+的C++代码的一个小项目 2016年9月 - - > Java好难看各种匿名类的使用,哪有C++的H文件来的清晰明了。 2016年10月 - - > 从Android来学Java基础吧。 2016年12月 - - > J2EE框架的学习,我对Java的态度180°转变,他确实是一门高级语言,我觉得好厉害啊。我可以写出2W+Java代码的Andro

2017-04-15 10:42:53 395

原创 Android(3)Activity总结之一

系统内部是如何启动一个Activity? 新的Activity对象是在何时创建? Activity的onCreate在何时被回调? 当我们需要创建一个Activity时,也许知识一句onCreate就完事了,也是没有想过这一过程系统为我们做了哪些事。复习当我们使用AIDL进行IPC时系统会为我们自动生成一个相应的类,这个类首先继承了IInterface,其内部有两个子类第一个子类为Stub此类是一个

2017-04-15 10:34:07 307

原创 资治通鉴摘引一

夫事未有不生于微而成于著,圣人之虑远,故能谨其微而治之,众人之识近,故必待其著而后救之;治其微则用力寡而功多,救其著则竭力而不能及也。

2017-03-16 20:29:21 210

原创 Android(2)进程通信之连接池

1.基本概念进程是进行资源分配,线程是调度的一个独立单位,一个进程可以包含若干个线程。 一个App一般来是一个进程,当然也不乏多进程App,修改App的进程数可以在Activity或者Service的配置文件中使用 android:process=":mytest" android:process="包名.mytest"区别是第一种配置方式为私有进程,其他应用无法进入;第二种方式的进程可以通过s

2017-03-15 02:32:21 244

原创 Android(1)进程通信基础知识

Android(1)进程通信基础知识1.基本概念进程是进行资源分配,线程是调度的一个独立单位,一个进程可以包含若干个线程。 一个App一般来是一个进程,当然也不乏多进程App,修改App的进程数可以在Activity或者Service的配置文件中使用 android:process=":mytest" android:process="包名.mytest"区别是第一种配置方式为私有进程,其他应用

2017-03-14 01:44:57 212

原创 纪念逝去的青葱

青葱岁月,时光点点,不知若干年后我是否还能记得你。

2017-03-06 19:20:00 230

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除