相信技术的力量

想要跨越 就要付出更多

排序:
默认
按更新时间
按访问量

从源码角度分析view的layout过程

上两篇文章主要讲述了view的measure过程,主要分析了xml文件中控件的height和width设置成不同值的时候,经过测量之后,如何计算出控件的真实高度。所以也就验证了我们经常所说的measure过程就是把match_parent等值转化成在具体设备上的具体的值。     本文主要分析一...

2015-08-19 16:28:40

阅读数:3881

评论数:5

从源码角度分析linearLayout测量过程以及weight机制

上文从源码角度分析了view和viewGroup的measure机制,如果还没有阅读的同志们,可以前往从源码角度分析Android View的绘制机制(一)阅读。下面我再结合linearLayout的measure过程解释以下两个问题的缘由。问题一:<LinearLayout xmlns:a...

2015-08-19 15:09:19

阅读数:7014

评论数:20

从源码角度分析Android View的绘制机制(一)

在Android的学习道路上,每一个人员都免不了去翻阅Android的源码,因为只有从源码的角度分析问题,我们才能真正的玩转Android开发。最近由于工作比较闲,总想着想写点什么东西,正好自己也可以整理一下。考虑到view的显示机制是自定义view的基础,也是面试中经常被问到的问题,所以记录此文...

2015-08-18 17:43:52

阅读数:2119

评论数:1

Android版的股票行情K线图开发

转载请注明出住: http://blog.csdn.net/andywuchuanlong 现在在手上的是一个证券资讯类型的app,其中有涉及到股票行情界面,行情中有K线图等,看到网上很多人在求这方面的资料,所以我特地写了一个demo在此处给大家分享一下。 下面是做出来的效果图: ...

2015-06-26 10:31:18

阅读数:14829

评论数:31

AudioRecord判断是否有音频输入

Android党都应该玩过一个叫吹裙子的游戏,这个游戏就是原理就是通过监听用户吹出的气的力度来决定如何把MM的裙子弄飞起来的,所以关键在于如何判断用户吹气的力度问题。现在公司刚好有这个需求要评估就是需要一直监听用户的语音输入,当在两秒内没有语音输入时候就暂停某项事情,有语音输入的时候就要继续做某件...

2017-01-13 09:20:50

阅读数:2989

评论数:2

下载、编译、运行android 7.1系统(ubuntu 16.0.4)

android 7.x的系统版本新增的很多的新功能,比如说任务处理功能,允许用户双击“最近”按钮去快速切换到自己上一次使用的应用程序中。同时,“最近”菜单中还有一个“清除全部”按钮。再比如说新增了省流量功能,在接近用户计费周期末,或是流量包本身较小的情况下,减少应用消耗的数据流量。在启用这一模式时...

2017-01-03 15:50:29

阅读数:6015

评论数:21

ubuntu系统启动后停在(initramfs)

ubuntu系统由于断电等原因导致文件系统损坏,在开机时停留在initramfs,此时可以输入exit命令退出initramfs,如果不能退出,则可以适用一下方式进入fsck -y /dev/sdbn 命令 修复。修复完毕重启reboot即可。

2016-10-11 08:55:50

阅读数:18992

评论数:2

从源码角度分析android蓝牙设备如何互联?

转载需说明出处: 最近公司需要用到专门的蓝牙设备去连接机器人,由于之前也没有接触过蓝牙,所以就在网上搜寻大把的资料,到最后还是没有什么所获,基本上所有的代码都是用不了的,蓝牙始终是连接不成功。但幸好的是android系统中的setting就附带了蓝牙连接的功能,所以研究下setting还是阔以的...

2016-09-25 15:16:26

阅读数:3992

评论数:2

Android源码目录结构详解

Android |– Makefile |– bionic (bionic C库) |– bootable (启动引导相关代码) |– build (存放系统编译规则及...

2016-06-26 17:51:41

阅读数:4698

评论数:3

我作为一个面试官的感想

最近公司在招聘android技术岗位,我参与了技术的面试,由于公司人事部门故意给求职人员施加压力,比如说求职者哪方面有点不好,哪方便态度过于散漫,对于求职者而言 听到这些最好是要学会怎么应对,另外,针对我面试的一些求职者,我也给出一些我的感受吧。 1、只要不伤及到自身人格和尊严的问题,出于本在...

2016-03-25 16:43:14

阅读数:2864

评论数:13

做一个具有阳光思维的人

做一个具有阳光思维的人,任何时候,利用阳光的心态去看待别人的每隔举动,利用阳光的思维去思考和人相处的过程。工作久了突然发现我们已经走的太远,以至于忘了为了什么而出发,以前绝对是因为喜爱,可现在却参杂了一点生活因素在里面。但是有一点是不会改变的,就是会一直走向这个行业,做一个阳光道德的从业者。以前认...

2016-03-13 12:15:22

阅读数:2259

评论数:6

《Android动画高手成长记》跳跳球效果

在介绍本文动画效果实现之前,先来介绍属性动画相关的几个知识点。 ValueAnimator与ObjectAnimator。 Interpolator插值器与TypeEvaluator估值器。 在Android3.0之前,系统提供了两种动画效果实现方式,帧动画frame-by-frame anima...

2016-01-14 17:00:03

阅读数:3466

评论数:2

Android点击Button水波纹效果

接下来要介绍的就是如何实现上述图中的波纹效果,这种效果如果大家没有体验过的话,可以看看百度手机卫士或者360手机卫士,里面的按钮点击效果都是这样的,另外Android 5.0以上的版本也出现了这种效果。不多说,下面聊聊具体的怎么实现。首先大家看到的是三个button,水波纹的出现给我们的错觉是直接...

2016-01-03 13:59:48

阅读数:10516

评论数:9

Android TextView两端对齐

Android中的TextView控件默认是做不到两端对齐的,都是左对齐。可能的原因是安卓默认数字、字母不能为第一行以后每行的开头字符,因为数字、字母为半角字符,还有就是文字中的英文字符占用1个字节,而一个汉字占用两个字节。下面我就介绍下实现两端对齐的原理: 1、测量一个中文汉字所占用的宽度 ...

2015-12-07 17:31:54

阅读数:6685

评论数:5

从源码角度分析Android中的Binder机制的前因后果

前面我也讲述过一篇文章《带你从零学习linux下的socket编程》,主要是从进程通信的角度开篇然后延伸到linux中的socket的开发。本篇文章依然是从进程通信的角度去分析下Android中的进程通信机制。为什么在Android中使用binder通信机制?众所周知linux中的进程通信有很多种...

2015-09-21 16:22:22

阅读数:2775

评论数:1

带你从零学习linux下的socket编程

我们在平时的开发过程中很少接触到socket开发,以前在学习java基础的时候这个socket编程的学习也是一带而过,没有怎么深入的研究学习,现在感觉还是很有必要的去深入了解一下socket。由于现在从事Android开发,Android底层又是基于linux系统的,所以我接下来就聊一下linux...

2015-09-06 08:32:32

阅读数:2862

评论数:3

从源码角度分析native层消息机制与java层消息机制的关联

上文从源码分析Handler机制中从java层分析了消息机制,接下来本文从native层去分析Android中的消息机制。在一个消息驱动的系统中,最重要的就是消息队列和消息获取和处理,从上一篇文章可以看出handler的消息机制主要是靠MessageQueue进行消息列队,靠Looper进行消息循...

2015-09-02 15:36:16

阅读数:120092

评论数:10

从源码角度分析java层Handler机制

在Android中,当要更新ui的时候,我们必须要在主线程中进行更新,原因时当主线程被阻塞了5s以上就会出现anr异常,会导致程序崩溃。所以一些耗时的操作必须要放在子线程中,但是在子线程中又不能做更新ui的操作,所以为了解决这个问题,Android设计了handler机制,handler的出现建立...

2015-09-01 16:53:04

阅读数:5112

评论数:4

从源码角度分析view的draw过程

前面已经分析了Android view的测量和布局,并且重点介绍了linearLayout的测量机制。特别感谢博乐对我前一篇文章的推荐以及赞赏,我也会一如既往的写好每一篇文章。接下来的这篇文章会以前两篇文章为基础继续分析draw。 1、从源码角度分析Android View的绘制机制(一) ...

2015-08-21 10:36:29

阅读数:1851

评论数:0

深入理解ThreadPoolExecutor运转机制

最近发现几起对ThreadPoolExecutor的误用,其中包括自己,发现都是因为没有仔细看注释和内部运转机制,想当然的揣测参数导致,先看一下新建一个ThreadPoolExecutor的构建参数:public ThreadPoolExecutor(int corePoolSize, ...

2015-08-05 15:28:59

阅读数:1277

评论数:0

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