关闭

[置顶] 从源码角度分析view的layout过程

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

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

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

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

在Android的学习道路上,每一个人员都免不了去翻阅Android的源码,因为只有从源码的角度分析问题,我们才能真正的玩转Android开发。最近由于工作比较闲,总想着想写点什么东西,正好自己也可以整理一下。考虑到view的显示机制是自定义view的基础,也是面试中经常被问到的问题,所以记录此文,和大家共享,因水平有限,望大家踊跃拍砖,不胜感激。 有过自定义view的同行们都应该知道,view的...
阅读(1949) 评论(1)

[置顶] Android版的股票行情K线图开发

转载请注明出住: http://blog.csdn.net/andywuchuanlong 现在在手上的是一个证券资讯类型的app,其中有涉及到股票行情界面,行情中有K线图等,看到网上很多人在求这方面的资料,所以我特地写了一个demo在此处给大家分享一下。 下面是做出来的效果图: 这个 界面 是如何画出来的我就不做介绍了,大家可以去下载项目源码。 背景图是利用canv...
阅读(9907) 评论(30)

AudioRecord判断是否有音频输入

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

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

android 7.x的系统版本新增的很多的新功能,比如说任务处理功能,允许用户双击“最近”按钮去快速切换到自己上一次使用的应用程序中。同时,“最近”菜单中还有一个“清除全部”按钮。再比如说新增了省流量功能,在接近用户计费周期末,或是流量包本身较小的情况下,减少应用消耗的数据流量。在启用这一模式时,系统将拦截后台的数据使用,并在可能的情况下减少前台运行应用使用的数据量,例如限制你看视频,下调画质,...
阅读(4310) 评论(21)

ubuntu系统启动后停在(initramfs)

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

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

转载需说明出处: 最近公司需要用到专门的蓝牙设备去连接机器人,由于之前也没有接触过蓝牙,所以就在网上搜寻大把的资料,到最后还是没有什么所获,基本上所有的代码都是用不了的,蓝牙始终是连接不成功。但幸好的是android系统中的setting就附带了蓝牙连接的功能,所以研究下setting还是阔以的。从android3.0开始,蓝牙的api就提供了对蓝牙profile的支持,比如a2dp profil...
阅读(3338) 评论(2)

Android源码目录结构详解

Android |– Makefile |– bionic (bionic C库) |– bootable (启动引导相关代码) |– build (存放系统编译规则及generic等基础开发包配置) |– cts (And...
阅读(4176) 评论(3)

我作为一个面试官的感想

最近公司在招聘android技术岗位,我参与了技术的面试,由于公司人事部门故意给求职人员施加压力,比如说求职者哪方面有点不好,哪方便态度过于散漫,对于求职者而言 听到这些最好是要学会怎么应对,另外,针对我面试的一些求职者,我也给出一些我的感受吧。 1、只要不伤及到自身人格和尊严的问题,出于本在求职,求职者都应该多听,不要有抵触心理。 2、面试的时候不要自以为面试官比你技术差,就算你工作有很多年...
阅读(1580) 评论(12)

做一个具有阳光思维的人

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

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

在介绍本文动画效果实现之前,先来介绍属性动画相关的几个知识点。 ValueAnimator与ObjectAnimator。 Interpolator插值器与TypeEvaluator估值器。 在Android3.0之前,系统提供了两种动画效果实现方式,帧动画frame-by-frame animation和补间动画tweened animation。帧动画就是类似电影播放一样,将整部影片拆分成一片片...
阅读(3012) 评论(2)

Android点击Button水波纹效果

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

Android TextView两端对齐

Android中的TextView控件默认是做不到两端对齐的,都是左对齐。可能的原因是安卓默认数字、字母不能为第一行以后每行的开头字符,因为数字、字母为半角字符,还有就是文字中的英文字符占用1个字节,而一个汉字占用两个字节。下面我就介绍下实现两端对齐的原理: 1、测量一个中文汉字所占用的宽度 2、根据TextView的宽度和一个汉字所占用的宽度以及字符之间的间隔计算出总行数。 3、根据padd...
阅读(5110) 评论(5)

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

前面我也讲述过一篇文章《带你从零学习linux下的socket编程》,主要是从进程通信的角度开篇然后延伸到linux中的socket的开发。本篇文章依然是从进程通信的角度去分析下Android中的进程通信机制。为什么在Android中使用binder通信机制?众所周知linux中的进程通信有很多种方式,比如说管道、消息队列、socket机制等。socket我们再熟悉不过了,然而其作为一款通用的接口,...
阅读(2293) 评论(1)

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

我们在平时的开发过程中很少接触到socket开发,以前在学习java基础的时候这个socket编程的学习也是一带而过,没有怎么深入的研究学习,现在感觉还是很有必要的去深入了解一下socket。由于现在从事Android开发,Android底层又是基于linux系统的,所以我接下来就聊一下linux下的socket编程,好了,闲话不多说了,进入正题。一切皆socket      在早期的单机系统中,各...
阅读(2247) 评论(3)

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

上文从源码分析Handler机制中从java层分析了消息机制,接下来本文从native层去分析Android中的消息机制。在一个消息驱动的系统中,最重要的就是消息队列和消息获取和处理,从上一篇文章可以看出handler的消息机制主要是靠MessageQueue进行消息列队,靠Looper进行消息循环,Looper的loop方法中进行轮询消息的实际操作还是依靠MessageQueue的next方法来获...
阅读(118655) 评论(10)

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

在Android中,当要更新ui的时候,我们必须要在主线程中进行更新,原因时当主线程被阻塞了5s以上就会出现anr异常,会导致程序崩溃。所以一些耗时的操作必须要放在子线程中,但是在子线程中又不能做更新ui的操作,所以为了解决这个问题,Android设计了handler机制,handler的出现建立起了主线程与子进程之间的通信桥梁,使得ui更新问题得到改善,下面就来剖析一下handler。Activi...
阅读(4003) 评论(4)

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

前面已经分析了Android view的测量和布局,并且重点介绍了linearLayout的测量机制。特别感谢博乐对我前一篇文章的推荐以及赞赏,我也会一如既往的写好每一篇文章。接下来的这篇文章会以前两篇文章为基础继续分析draw。 1、从源码角度分析Android View的绘制机制(一) 2、从源码角度分析linearLayout测量过程以及weight机制 3、从源码角度分析view的l...
阅读(1531) 评论(0)
105条 共7页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:306381次
    • 积分:3659
    • 等级:
    • 排名:第9223名
    • 原创:100篇
    • 转载:4篇
    • 译文:1篇
    • 评论:161条
    博客专栏
    最新评论