RecyclerView 是谷歌官方推出的控件,可以完全取代listView,根据不同的layoutManager实现不同的显示效果。这里 有一个谷歌的RecyclerView视频介绍
Android NestedScrolling
NestedScrolling 是谷歌推出的用于解决嵌套滑动的解决方案,在CoordinatorLayout中有使用。在 sdk api 21 之后,直接更新到了 View 和 ViewGroup源码里面,同时也在android.support.v4 包中提供了两个接口NestedScrollingChild和NestedScrollingParent, 还和两个辅助类 NestedScrollingChildHelper 和 NestedScrollingParentHelper 用来帮助开发者实现相关功能. 因此在 sdk21之后 系统原生控件是直接支持嵌套滑动的,如果自己需要实现,用那几个相关类就可以了。
Android控件-ListView阅读
ListView是早期版本时候的常用控件,虽然现在基本都不用了,但我觉得用来学习肯定会有收获。本来想自己写,但是看到别人已经有写的很好的版本了,鉴于郭神的博客应该不会404,所以这里直接贴链接了。Android ListView工作原理完全解析
Android SystemUI的相关类
在Android系统中SystemUI是以应用的形式运行在Android系统当中,即编译SystemUI模块会生产APK文件,源代码路径在frameworks/base/packages/SystemUI/,安装路径system/priv-app/-SystemUI。它和普通apk不同的是,它是开机启动的并且不可退出,可以把它理解为一个模块。它为系统提供了基础的显示页面,比如 屏幕顶端的状态栏,屏幕底部的导航栏,壁纸,近期使用app列表,截屏操作,电量监控等功能。
Android控件总结(显示流程,触摸事件派发)
在wms服务中,我们可以直接使用它的api来创建一个窗口,显示出来并且通过InputEventReceiver接收输入事件。但是这种方法太原始,并且存在以下一些问题:
- 需要完全的Android源码环境
- 需要自己去处理UI元素的测量,布局和绘制
- 还需要处理InputEventReceiver事件,分发到合适的窗口
- wms来的各种回调
Android binder原理和设计
Android-wms总结
Android 中的窗口是屏幕上一块用于 显示各种视图 并且可以响应用户输出的 矩形区域。从原理上来说,窗口的是独占一个Surface实例的显示区域。而WindowsManagerService则是运行在系统进程中的用于 为窗口分配Surface,控制Surface的Z-order,位置,尺寸,窗口动画等功能的 一项重要服务,并且还是输入系统的一个中转站,负责转发输入系统的消息到具体的窗口进行响应。
Java-线程池
最近遇到一个问题,如果Java线程池的设置是,coresize=0,队列为无界队列,maxSize=1,这个线程池会不会工作,会怎样工作?
Android-binder-c++层
这里主要是native端的流程
《java并发编程的艺术》outline
最近几天把618在京东买的《java并发编程的艺术》看完了,感觉挺不错的,很多东西都是第一次看到这么详细的内容,可以和《深入理解Java虚拟机(第2版)》配合看,推荐先看后面这一本