首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
小栗同学
掘友等级
Android、AI、架构师、Python
某厂高级搬砖师,参与过大模块架构设计,注重基础,深耕 Android 基础知识
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
46
文章 46
沸点 0
赞
46
返回
|
搜索文章
最新
热门
Android 源码阅读 | Looper
Looper类通常用户为线程提供消息循环。 线程默认下不会有消息循环,为了创建它,在线程里面调用 Looper.prepare ,接着调用 Looper.loop ,进行处理消息,直到循环停止。 大多数与消息循环的交互都是通过 Handler 类进行的。 在prepare方法中…
Android 源码阅读 | MessageQueue
Message 不是直接添加到 MessageQueue 中,而是通过与Looper关联的 Handler 对象添加的。 省略了一些无关紧要的代码。在最开始,我们看到有一个变量:Message mMessages ,可以明确,这个就是队列的头。而在 Message 类的源码分析…
Android 源码阅读 | Message
Message是一个消息类,携带着描述和任意数据对象。Message包括两个额外的int字段和一个 extra object 字段。 虽然Message的构造方法是一个公共方法,但是最好通过 Message.obtainMessage() 的方法去获得一个Message对象,因…
Android 源码阅读 | LocalBroadcastManager
本地广播发送的数据不会离开app进程,也就是进程内发送和接收数据,所以不必担心会泄露私有的数据。 别的进程也不能向你的app发送本地广播,也不必担心会有漏洞被利用。 它相比全局广播会更加地高效。 而且,注意看到,Handler绑定的是主线程的Looper,而看到 execute…
Android 源码阅读 | IntentService
IntentService 继承 Service ,客户端通过 android.content.Context#startService(Intent) 发送Intent给Service,Service便开始工作,他使用工作线程处理每一个Intent,并且自动结束生命周期在完成…
Android 源码阅读 | SparseArray
SparseArray是int映射到object的数据结构,它不像一般的对象数组,它的索引中可能存在着间隙。 为了提升性能,在删除的时候,并不会立即压缩数组,回收空间,而是先标记此元素已经被删除,再到合适的时机再执行GC方法把空间回收。如果在被GC之前,有别的元素命中了此被标记…
Android 自定义 View | 指示牌弹出动效
1. 简述 这次来实现一个简单的动画,算是动画方面的实践了。要实现的效果如下: 这是一个指示牌,每切换一次,就会从底部重新弹出来,并且文字也改变。动画简单,适合入门。 2. 动画分解 动画在一个Rect:240px*290px的方形区域内进行(这里以1280*720的尺寸为例)…
Android 自定义 View | 扭曲动效
1. 概述 今天继续分(Zhuang)享(Bi)一个自定义的动画历程。今天的目标如下: 这动画的UI源文件已经丢失,也就是动画的细节已经不知道(咳咳),好吧硬着头皮上吧。 2. 简单分析 简单看出,整个动画分成三个部分:车轮,车厢,车顶。 车轮:车轮的动效比较简单,基于X轴的横…
Android 自定义 View | 波浪动效
1. 概述 最近开始学习自定义View,看到现在公司项目上的一个动画效果,顿时想到其实可以自己画,于是就开始着手优(zhuang)化(bi)这个动画。 其实很简单对不对,但初学者的我还是要思考一下。 2. 动画分解 第一个是背景,这个直接画bitmap就可以了。 第二个就是这个…
算法 | 位图排序
0. Thanks 1. 概述 显然这个涉及到超大数据的排序。一般有两个套路:一个用堆排序,一个是用位图排序。这里说 一下位图排序。 2. 原理 位图排序其实是用数据的下标作映射到对应的数据。假如现在有一个待排序的数据: 并把他们初始化为零。每一个bit位的取值是0,或者1。 …
下一页
个人成就
文章被点赞
302
文章被阅读
49,811
掘力值
1,546
关注了
14
关注者
40
收藏集
11
关注标签
6
加入于
2017-09-15