本文首发于github,是我所在的组LittleFriendsGroup的一个源码分析项目哦,如果您感兴趣,也可以去认领一篇文章写写你的观点。 声明.本项目源码基于Api 23 1.谈谈LinearLayout Andr…
分类:移动开发
Android源码分析之Touch事件分发机制
研究了View的绘制流程,接下来不得不研究下View的Touch事件机制,只有掌握了这两方面的知识,才能对View有全面的认识,Touch事件的入口在Activity中,代码如下: public boolean disp…
ViewPager的使用(实现微信左右切换页卡功能)
ViewPager的使用(实现微信左右切换页卡功能) ViewPager可以使视图左右滑动,类似于微信的那种左右滑动的页卡选择界面 一、ViewPager创建步骤 ① 在XML布局中加入android.support.v…
使用Glide加载图片系列之一从不同的数据源加载图片
与其他图片加载库相同,Glide除了可以加载网络图片之外,也可以加载本地图片。甚至还可以从各种各样奇葩的数据源中加载图片。 加载网络图片 很多情况下,我们使用图片加载库就是为了加载网络图片。网络操作是一个很复杂的东西。试…
使用apktool、keytool、jarsigner反编译并打包apk
记录一下解压一个apk,替换未加密的资源文件,然后再打包成apk,并签名的过程。 操作环境与工具 环境: Windows 7 SP1 Java SE 1.8.0_111-b14 工具: ApkTool (这里使用的是Ap…
Android之Java基础String与StringBuffer
借用别人总结的一句话就是:常量和变量之间的关系. String的内容是不可变的,StringBuffer是可变的; String的内容被指定之后,再次赋值,其实是创建了一个新的对象在方法区,也就是说其实创建了两个对象. …
Android的进阶学习(三)--Intent和IntentFilter
IntentFilter,顾名思义,就是Intent的过滤器。回想一下,好像Intent在我们的代码中出现的频率还是挺高的,那么今天我们就来理理。 Intent Intent的意思是意图, 而就和它的意思差不多,每当我们…
FFmpeg+SDL2实现音频流播放
SDL2文章列表 SDL2入门 SDL2事件处理 SDL2纹理渲染 SDL2 PCM音频播放 FFmpeg+SDL2实现视频流播放 之前完成了PCM音频的播放,这次实现的是FFmpeg+SDL2播放任意视频中的音频流。 …
Android定时任务
参考: Android中定时器的3种实现方法 Thread.sleep java的方式,不推荐 sleep使线程暂停,如果需要循环,需要手动设置while之类。 实现方式: 定义Handler类:接收消息并处理 Hand…
ButterKnife编译时生成代码原理:butterknife-compiler源码分析
1.butterknife-compiler介绍 上篇文章:注解框架源码分析(XUtils、ButterKnife),根据代码运行流程分析了xUtils和ButterKnife,ButterKnife最终实现注解方法的代…
推特开源的Serial,轻量级,快速的json解析框架
你还在用Gson,fastjson吗?最近几个月推特开源了她们的json解析和序列化框架 Serial,这是一个轻量级框架,操作起来也很简单。下面简单的介绍一下。 github地址: https://github.com…
Android高效并简约的使用ListView(一)
前言 如何高效并简洁的使用listview,首先自然是关心如何对BaseAdapter定制。站在代码抽象的角度,子类对接口进行实现,父类应该做好一切需要的工作。点击此处,源码已上传github 通过继承我的BaeList…