- 博客(60)
- 资源 (20)
- 收藏
- 关注
原创 从 0 开始编译 Android 系统源码
在开始学习 Android Framework 的知识前,准备好相关的源码环境是非常有必要的。可以选择直接在网站在线看,但是跳转这些还是不如在 IDE 下来的方便。或者也可以下载好指定版本的源码,并通过 IDE 来查看,但是这样无法编译源码,所以也就无法修改源码后编译查看效果。
2022-11-22 19:58:49 4146 3
原创 详解 Java 泛型(Generic)机制
泛型可以指定类型变量,从而让代码可以对不同类型的对象进行重用。以及,还可以让编译器更好的了解类型,从而避免强制类型转换,提升代码的安全性。
2022-11-08 15:57:24 1158
原创 Android 消息机制源码分析
在开始之前,不知道大家有没有思考一个问题,就是大家都知道 Android 只能在主线程修改 UI,那么 Android 为什么要这样设计呢?为什么不可以在子线程中更新 UI 呢?
2020-05-28 11:30:50 518
原创 Android 中的各种 Drawable 你都知道了吗?
Drawable 翻译成中文就是可绘制的意思,是“可绘制东西”的抽象(实际绘制通过 Canvas 进行)。Drawable 是一个抽象类,Android 也实现了很多具体的类型,下面一一介绍一下。
2020-05-23 14:20:28 1112
原创 Android 中各种通知(Notification)的使用
文章目录通知通道(Channel)通知重要性级别创建基本通知大文本样式通知带图标样式通知大图标样式通知响应用户点击添加操作按钮添加直接回复操作进度条通知设置分类设置锁屏下通知可见性通知导航自定义通知自定义通知内容布局完全自定义通知通知 Badge显示、更新通知取消通知注意事项参考文档通知通道(Channel)从 Android 8.0 开始,显示通知必须先创建通道:NotificationManager notificationManager = (NotificationManager) getSy
2020-05-20 17:10:58 3954 1
原创 Android 揭露动画(Reveal Effect)的兼容实现
Android 5.0 系统提供了 ```ViewAnimationUtils#createCircularReveal() ```API,用于给我们方便的创建揭露动画。但是该 API 只支持 5.0 及以上,那么 5.0 以下该怎么办呢?网上的一些方法,大多都是通过自定义 Shape 然后通过 Scale 动画来做,这并不是一个好的方法,局限性太大。其实官方就提供了一个兼容实现类:```CircularRevealCompat ```,我们完全可以使用它来做兼容。
2019-07-31 09:47:38 1057 2
原创 Android 约束布局(ConstraintLayout)1.1.0 版详解
前言准备Circular PositioningEnforcing constraintsDimensionsMargins and chainsOptimizerBarrierGroupPlaceholder总结 转载请标明作者和出处:http://airsaid.github.io/20180422/Android-ConstraintLayout-...
2018-04-24 18:52:21 4170
原创 Android 约束布局(ConstraintLayout)详解
前言约束概述转换布局开始创建布局添加约束基线约束ChainsProperties设置宽高比例Guidelines自动添加约束参考 本篇 ConstraintLayout 讲解版本:1.0.2,1.1.x 版本开始新增功能在下篇进行讲解。前言ConstraintLayout 是一个 ViewGroup,它的出现是为了解决复杂布局时,布局嵌套(
2018-01-13 16:28:13 43599 9
原创 Java 位运算系列之通过位运算操作状态
回顾首先来回顾一下这些运算: - &(与运算):只有当两方都为 true 时,结果才是 true,否则为 false。 - |(或运算):只要当一方为 true 时,结果就是 true,否则为 false。 - ^(异或运算):只要两方不同,结果就是 true,否则为 false。以 true、false 为例:true & true = truetrue & false
2017-12-21 11:50:11 4446 2
原创 Android 中注解的使用
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/78017487](http://blog.csdn.net/airsaid/article/details/78017487) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]## 前言Android Support Library 从
2017-09-18 11:40:49 1759
原创 Android 官方 Training 笔记之 OpenGL ES
目的注意构建 OpenGL 环境在清单文件中声明创建一个 OpenGL ES 图形的 activity创建 GLSurfaceView 对象创建渲染器类定义图形定义一个三角形定义一个正方形绘制图形初始化形状绘制形状应用投影和相机视图定义投影定义一个摄像头视图应用投影和照相转换添加动态旋转形状响应触摸事件安装触摸监听器暴露旋转角度应用旋转下载目的引导开发使
2017-06-20 15:25:48 2663 2
原创 Android 自定义控件之 ZProgressBar
前言最近我的个人项目中,有一个页面需要大量用到 ProgressBar,但是每个 ProgressBar 的颜色是不确定的。那么原生 ProgressBar 就无法满足我的需求了,因为原生 ProgressBar 的样式是根据 Drawable 来的,那么多颜色,岂不是需要创建 N 个 Drawable 文件了?并且该 ProgressBar 在 AndroidN 之前并没有动画效果,综上所述,索性
2017-05-22 11:10:33 1140
原创 一个数据存储使用的 Leancloud、架构采用 MVP 的记账本 APP
AccountBook一个数据存储使用的 Leancloud、架构采用 MVP 的记账本 APP。(目前正在不断完善中) Download扫码下载: 网址下载: 点我下载VersionV1.0.5(5/24)增加了统计功能。更新了应用图标。V1.0.4(5/4)增加自定义分类功能。修复拍照功能 Bug。V1.0.3(4/28)帐薄页增加
2017-05-02 16:47:31 1817 1
原创 Android 从0开始自定义控件之 自定义属性详解(十一)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/54564120](http://blog.csdn.net/airsaid/article/details/54564120) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]# 前言和自定义 View 打交道,肯定是难免要写自
2017-01-15 19:25:50 2810 3
原创 Android 从0开始自定义控件之 自定义 View 基础实例(十)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/54294144](http://blog.csdn.net/airsaid/article/details/54294144) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]# 前言在前面的博客当中,我们学习了 View 的一
2017-01-09 22:34:37 6426 5
原创 Android 从0开始自定义控件之 View 的 draw 过程 (九)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53872349](http://blog.csdn.net/airsaid/article/details/53872349) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言前面已经了解了 View 三大流程的 meas
2016-12-25 21:08:59 4300 1
原创 Andriod 从0开始自定义控件之 View 的 layout 过程 (八)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53857738](http://blog.csdn.net/airsaid/article/details/53857738) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言在上一篇文章了,我们学习了 View 三大流程
2016-12-24 11:54:02 2540
原创 Android 从0开始自定义控件之 View 的 measure 过程(七)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53678640](http://blog.csdn.net/airsaid/article/details/53678640) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言经过前面2篇的铺垫,终于到正式学习 View
2016-12-15 23:10:03 3828
原创 Android 从0开始自定义控件之深入理解 MeasureSpec (六)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53576087](http://blog.csdn.net/airsaid/article/details/53576087) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言MeasureSpec 是 View 的一个内
2016-12-11 22:11:59 3146 2
原创 Android 从0开始自定义控件之 ViewRoot 与 DecorView (五)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53525335](http://blog.csdn.net/airsaid/article/details/53525335) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言好几个星期没写博客了,今天继续来学习 View
2016-12-08 22:07:10 3107 1
原创 Android 从0开始自定义控件之 View 的滑动冲突详解(四)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53244984](http://blog.csdn.net/airsaid/article/details/53244984) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言滑动冲突可以说每一个 Android 开发
2016-11-20 21:48:37 4285 5
原创 Android 从0开始自定义控件之 View 的弹性滑动(三)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53207851](http://blog.csdn.net/airsaid/article/details/53207851) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言在上一篇([Android 从0开始自定义控件
2016-11-17 22:29:10 4317 1
原创 Android 从0开始自定义控件之 View 的滑动(二)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53143754](http://blog.csdn.net/airsaid/article/details/53143754) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言由于Android的屏幕局限性,为了展示更
2016-11-12 22:44:06 5345 2
原创 Android 从0开始自定义控件之 View 基础知识与概念(一)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/53057091](http://blog.csdn.net/airsaid/article/details/53057091) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言自定义View可以说是Android路
2016-11-06 22:11:56 7237 6
原创 Android 自定义控件之圆点指示器 View (IndicateDotView)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52904344](http://blog.csdn.net/airsaid/article/details/52904344) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) #前言最近公司项目中,有一个如下的UI:![这里写图片描述](ht
2016-10-23 20:45:24 4616 2
原创 Android 传感器开发详解
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52902299](http://blog.csdn.net/airsaid/article/details/52902299) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言Android系统提供了对传感器的支持,如
2016-10-23 15:59:54 35219 17
原创 Android 自定义控件之圆形扩散View(DiffuseView)
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52683193](http://blog.csdn.net/airsaid/article/details/52683193) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#实现效果![这里写图片描述](http://i
2016-09-27 17:55:36 10072 2
原创 Android 自定义控件之基础几何图形绘制详解
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52562488](http://blog.csdn.net/airsaid/article/details/52562488) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言距离写上一篇自定义View文章已经大半年过
2016-09-17 11:56:29 4712
原创 Android 数据存储之SQLite数据库
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52419418](http://blog.csdn.net/airsaid/article/details/52419418) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言Android中有许多的数据存储方式,如果
2016-09-02 21:56:34 1725 1
原创 Android 自定义控件之可多选课程日历CalendarView
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52139045](http://blog.csdn.net/airsaid/article/details/52139045) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#效果图![这里写图片描述](http://
2016-08-06 22:32:28 9518 2
原创 Android 动画系列之属性(Property)动画详解
> 转载请标明出处: [http://blog.csdn.net/airsaid/article/details/52074566](http://blog.csdn.net/airsaid/article/details/52074566) > 本文出自:[周游的博客](http://blog.csdn.net/airsaid) [TOC]#前言前面博文中写了[逐帧](http://bl
2016-07-30 19:39:25 5029 4
原创 Android Studio 基本配置
系统字体文件编码显示行号驼峰选择自动导包LOG颜色警戒线设置禁用拼写检查系统字体File | Settings 打开设置选择 Appearance勾选 Override default fonts by (not recommended) ,选择一款支持中文的字体即可,size为字体大小。 文件编码File | Settings 打开设置选择 Editor | File En
2016-06-27 16:11:14 1509
原创 Android JNI开发之使用Lame将录音转MP3
由于在写之前在网上搜了搜,发现GIthub上已经有AndroidStudio版使用Lame转Mp3的了,所以这篇博客写的例子是Eclipse版本,所以如果是AS的请移步到别人之前已经写好的Github地址:https://github.com/GavinCT/AndroidMP3Recorder (未亲测过)
2016-06-10 19:36:36 6163 1
原创 Android 动画系列之自定义补间动画
在上一篇中写到了Android提供了Animation类作为补间动画的抽象基类,并提供了四个子类:ScaleAnimation 、TranslateAnimation、AlphaAnimation、RotateAnimation分别实现了四种基本动画形式:缩放改变、位置改变、透明度改变和旋转改变。但是我们在实际项目开发中,也有可能遇到更复杂的动画形式。比如说:三维旋转等。那么这个时候Android自己提供的就不能满
2016-06-05 20:41:02 3014
原创 Android 动画系列之补间(Tween)动画详解
上一篇博客中写了逐帧动画(Frame)的使用,Android中除了支持逐帧动画(Frame)之外,也提供了对补间(Tween)动画的支持。补间动画就是指开发者只需要指定动画的开始、结束等“关键帧”,而动画的变化的“中间帧”则由系统计算并补齐。这也是“补间”二字的来意。
2016-06-05 20:34:09 11947 1
原创 Android 动画系列之逐帧(Frame)动画详解
前段时间太忙了,已经好久没发博客了,好多想写的东西都没时间写,想了想,这个星期就抽时间写一个动画合集吧,把Android中用到的动画做一个大合集。忘记的时候可以上博客来看看。这一篇就先写Android中最简单也最容易理解的动画:逐帧(Frame)动画吧。逐帧动画是通过一张一张的图片,切换形成的动画,就类似与我们看的胶片电影一样,逐帧动画最简单的使用就是在
2016-06-01 22:47:12 2549
原创 Android 自定义属性(Attribute)详解
前言定义属性Attribute资源实例定义XML属性资源自定义ImageView类使用MainActivity代码前言Android本身给我们提供了很多的属性,像我们经常要用到的:android:layout_width="match_parent"、android:layout_height="match_parent"等等……但是有时候,我们需要用到自定义的View,自定义View可
2016-05-15 17:23:14 6298
原创 Android 初识 MVC、MVP框架
转载请标明出处: http://blog.csdn.net/airsaid/article/details/51315096 本文出自:周游的博客前言MVC、MVP、MVVP相信大家已经耳熟能详了,作为Android最出名的三个框架,它们的应用是非常的广泛。这篇博客就来简单介绍下其中二种框架。也加强下自己对这方面的了解。由于自己菜鸟一枚,有不对和需要补充的地方欢迎评论~
2016-05-04 15:08:03 3447
原创 Android 使用LayerDrawable自定制SeekBar的外观
前言实例定制SeekBar拖动条的外观前言LayerDrawable包含了一个Drawable数组,系统会按照Drawable对象数组的顺序来绘制它们,索引最大的对象将会被绘制在最上面。 定义LayerDrawable对象的XML文件的根元素是:<layer-list.../>,该元素可以包含多个<item../>元素,该元素可以指定如下属性: * android:drawable:指定作为L
2016-05-02 21:44:26 2087
原创 Java 集合体系之 AbstractMap 源码分析
AbstractMap 是一个实现了 Map 接口的抽象类,该类提供了 Map 接口的骨架实现,以最大限度的减少实现此接口所带来的工作量。
2016-04-18 11:49:14 2819
DrawableDemo.zip
2020-05-24
【博文源码】Android 自定义 View 基础实例
2017-01-09
Android SearchView和ListView结合使用Demo
2016-04-07
Android 仿微信朋友圈9宫格图片展示&多选图片
2016-03-31
Android 自定义控件之RippleEffect水波纹效果
2016-03-30
Android自定义控件(打造流布局实现热门搜索标签)
2016-03-09
Android:轻便好看的抢购倒计时Demo
2016-03-01
高仿IOS省、市、区三级联动:PickView双版本开源库
2016-02-03
eclipse和studio双版本:SwipeMenuListView-master
2016-02-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人