2017-08-12 Lauzy
最近想写个音乐播放器,偶然看到轻听这款播放器的播放和暂停按钮,在切换过程中的动画很是吸引我。本着造轮子(其实是 github 上边没找到)的想法,就花了点时间撸出来了这个效果。 效果就是下边这个样子: more 下边说下实现方法,中间也踩了一些坑。 测量及初始化 首先要确实View的宽高,在这里由于是圆形按钮,所以设置宽高相等,onMeasure()方法中设置下即可: ```java mWidth = MeasureSpec.getSize(widthMeasureSpec); mHeight = MeasureSpec.getSize(heightMeasureSpec); int widt 继续阅读 »
2015-08-27 Li Shuai
同步IO Linux IO的两阶段 同步, 异步, 阻塞, 非阻塞, 是网络IO中经常被提到的概念, 刚接触Tornado服务器的时候也知道Tornado是异步非阻塞的高性能web服务器, 直到最近看了一些资料才对同步异步的概念有了一些自己的想法。 HTTP协议是构建在TCP协议上的, TCP通信的底层本质上是socket的IO, 在Linux上, 以读socket为例, 数据首先到达的是内核缓冲区, 其次才会从内核缓冲区拷贝到用户进程, 所以负责通信的进程去读写socket的时候(也即recvfrom调用), 一般是两个阶段: 等待数据准备好, 此时数据暂存在内核缓冲区 数据准备好, 从内核缓冲区拷贝到用户进程 以上的两阶 继续阅读 »
2017-04-10 AnnatarHe
背景 去年大概十一月份学校就让做毕业设计,我这个学Web的自然是没什么意外地继续写网站了。 其实起初的时候我很纠结做什么课题的。那个时候对爬虫挺感兴趣的,又出了React-Native,就有做个学校App的想法。然后又因为对Web非常熟悉,做网站肯定不会翻车。 继续阅读 »