自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ABang的博客

踏入IT行业,总得留点什么......

  • 博客(34)
  • 资源 (25)
  • 收藏
  • 关注

原创 自定义View之总结

一、View绘制的流程框架       View的绘制是从上往下一层层迭代下来的。DecorView-->ViewGroup(--->ViewGroup)-->View ,按照这个流程从上往下,依次measure(测量),layout(布局),draw(绘制)。关于DecorView,可以看这篇文章。二、Measure流程顾名思义,就是测量每个控件的大小。

2017-08-28 17:43:11 451

转载 自定义控件之视图篇:FlowLayout自适应容器实现

一、XML布局从布局图中可以看到,FlowLayout中包含了很多TextView.难度不大,布局代码如下:先定义一个style,这是为FlowLayout中的TextView定义的:style name="text_flag_01">      item name="android:layout_width">wrap_contentitem>      item name=

2017-08-26 17:19:23 515

转载 自定义控件之测量篇:测量与布局

一、ViewGroup绘制流程注意,View及ViewGroup基本相同,只是在ViewGroup中不仅要绘制自己还是绘制其中的子控件,而View则只需要绘制自己就可以了,所以我们这里就以ViewGroup为例来讲述整个绘制流程。绘制流程分为三步:测量、布局、绘制 分别对应:onMeasure()、onLayout()、onDraw() 其中,他们三个的作用分别如下: onMe

2017-08-26 15:21:16 703

转载 自定义控件之绘图篇:Canvas与图层(二)

一、FLAG的具体意义1、FLAG概述有关save系列函数,在canvas中总共有如下几个:public int save()  public int save(int saveFlags)  public int saveLayer(RectF bounds, Paint paint, int saveFlags)  public int saveLayer(flo

2017-08-24 10:06:55 833

转载 自定义控件之绘图篇:Canvas与图层(一)

一、如何获得一个Canvas对象方法一:自定义view时, 重写onDraw、dispatchDraw方法(1)、定义 我们先来看一下onDraw、dispatchDraw方法的定义@Overrideprotected void onDraw(Canvas canvas) { super.onDraw(canvas);}@Overrideprotected void di

2017-08-24 09:36:38 3946 1

转载 自定义控件之绘图篇:Paint之setXfermode(一)

一、GPU硬件加速1、概述GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”。与CPU不同,GPU是专门为处理图形任务而产生的芯片。 在GPU出现之前,CPU一直负责着所有的运算工作,CPU的架构是有利于X86指令集的串行架构,CPU从设计思路上适合尽可能快的完成一个任务。但当面对类似多媒体、图形图像处理类型的任务时,就显得力不从心。因为在多媒体

2017-08-22 18:28:21 455

转载 自定义控件之绘图篇:Paint之setColorFilter

一、setColorFiltersetColorFilter的完整声明为:public ColorFilter setColorFilter(ColorFilter filter)  参数是传入ColorFilter的对象,其实ColorFilter是一个空对象,其中什么也没有:public class ColorFilter {      int nat

2017-08-21 16:11:55 608

转载 自定义控件之绘图篇:Paint之ColorMatrix与滤镜效果

一、矩阵概述1、定义称为m*n矩阵2、矩阵乘法矩阵乘法其实并不难,它的意思就是将第一个矩阵A的第一行,与第二个矩阵B的第一列的数字分别相乘,得到的结果相加,最终的值做为结果矩阵的第(1,1)位置的值(即第一行,第一列)。 同样,A矩阵的第一行与B矩阵的第二列的数字分别相乘然后相加,结果做为结果矩阵第(1,2)位置的值(即第一行第二列)。

2017-08-21 14:21:14 466

转载 自定义控件之绘图篇:Paint之函数大汇总

一、基本用法1、概述我们先来看一下paint中基本设置的函数都有哪些: reset() 重置画笔 setColor(int color) 给画笔设置颜色值 setARGB(int a, int r, int g, int b) 同样是设置颜色,但是利用ARGB分开设置 setAlpha(int a) 设置画笔透明度 setStyle(Paint.St

2017-08-18 15:45:16 1248

转载 自定义控件之绘图篇:Path之贝赛尔曲线和手势轨迹、水波纹效果

从这篇开始,我将延续androidGraphics系列文章把图片相关的知识给大家讲完,这一篇先稍微进阶一下,给大家把《Android Graphics(二):路径及文字》略去的quadTo(二阶贝塞尔)函数,给大家补充一下。 本篇最终将以两个例子给大家演示贝塞尔曲线的强大用途: 1、手势轨迹利用贝塞尔曲线,我们能实现平滑的手势轨迹效果 2、水波纹效果

2017-08-17 15:41:46 646

转载 贝塞尔曲线公式推导原理

贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。1962,由法国工程师皮埃尔·贝塞尔(Pierre Bézier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul de Casteljau于1959年运用de Casteljau演算法开发,以稳定数值的方法求出贝兹曲线。曲线的核心定义:起始点、终止点(也称锚点)、控制

2017-08-17 11:09:23 10143 2

转载 自定义控件之绘图篇:drawText()详解

一、概述1、四线格与基线小时候,我们在刚开始学习写字母时,用的本子是四线格的,我们必须把字母按照规则写在四线格内。比如:那么问题来了,在canvas在利用drawText绘制文字时,也是有规则的,这个规则就是基线!我们先来看一下什么是基线:可见基线就是四线格中的第三条线!也就是说,只要基线的位置定了,那文字的位置必然是定了的!2、canvas

2017-08-17 09:35:55 927

转载 自定义控件之绘图篇:区域(Region)

一、构造Region1、基本构造函数 public Region()  //创建一个空的区域   public Region(Region region) //拷贝一个region的范围   public Region(Rect r)  //创建一个矩形的区域   public Region(int left, int top, int right, int botto

2017-08-15 17:50:35 4927

转载 自定义控件之绘图篇:路径及文字

一、创建路径canvas中绘制路径利用:void drawPath (Path path, Paint paint)1、直线路径void moveTo (float x1, float y1):直线的开始点;即将直线路径的绘制点定在(x1,y1)的位置;void lineTo (float x2, float y2):直线的结束点,又是下

2017-08-15 17:04:20 397

转载 自定义控件之绘图篇:概述及基本几何图形绘制

一、Paint与Canvas像我们平时画图一样,需要两个工具,纸和笔。Paint就是相当于笔,而Canvas就是纸,这里叫画布。所以,凡有跟要要画的东西的设置相关的,比如大小,粗细,画笔颜色,透明度,字体的样式等等,都是在Paint里设置;同样,凡是要画出成品的东西,比如圆形,矩形,文字等相关的都是在Canvas里生成。下面先说下Paint的基本设置函数:p

2017-08-15 16:01:26 317

转载 Android动画之layoutAnimation与gridLayoutAnimation

前几篇给大家讲述了如何针对某一个控件应用动画,这篇将给大家讲解如何给容器中的控件应用统一动画。即在容器中控件出现时,不必为每个控件添加进入动画,可以在容器中为其添加统一的进入和退出动画。 从上面的示例动画也可以看出,listview中的数据在进入时就加入了统一动画,下面我们就来看看这些是怎么来实现的吧。 这篇我们将讲述有关普通viewGroup添加进入统一动画的LayoutAnimat

2017-08-15 15:05:15 483

转载 Android补间动画之ScaleAnimation、AlphaAnimation、RotateAnimation、TranslateAnimation、AnimationSet详解

首发:http://blog.csdn.net/harvic880925/article/details/40117115一、概述前两篇,我为大家讲述了利用XML来定义动画及插值器,但在代码中,我们常常是动态生成动画的,所以,这篇将为大家讲述如何用代码生成动态生成动画及插值器。先简单写出各个标签对应的类,方便大家理解:scale —— ScaleAnimatio

2017-08-15 14:35:34 782

转载 Android补间动画之alpha、scale、translate、rotate、set详解

首发:http://blog.csdn.net/harvic880925/article/details/39996643 一、概述Android的animation由四种类型组成:alpha、scale、translate、rotate,对应android官方文档地址:《Animation Resources》1、XML配置文件中alpha

2017-08-15 14:15:11 987

转载 自定义控件之绘图篇:canvas变换与操作

首发:http://blog.csdn.net/harvic880925/article/details/39080931相关文章:《Android自定义控件三部曲文章索引》: http://blog.csdn.net/harvic880925/article/details/50995268一、平移(translate)canvas中有一个函数translate(

2017-08-15 12:22:36 556

原创 Resource之ClipDrawable

一 ClipDrawable     ClipDrawable从位图截取一个“图片片段”,使用元素,可以现实使图片徐徐展开,其有三大属性:android:drawable :指定图片资源android:clipOrientation:指定借取方向,有水平截取或垂直截取android:gravity:指定截取时的对齐方式,其值有top|bottom|left|right|cent

2017-08-14 11:54:11 211

原创 Resource之layer-list(LayerDrawable)

一 LayerDrawable      LayerDrawable包含一个drawable数组,android系统按照顺序去绘制它们,在XML自定义要使用...元素。其属性有:android:drawable :指定drawable对象;android:id : 为drawable指定唯一标识;android:bottom|top|left|right:指定在目标控件绘制的位

2017-08-14 11:24:30 471 1

原创 Resounces之ShapeDrawable

一 前言        shapeDrawable用来定义基本的几何图形,例如oval(椭圆) line(直线) ring(环形) rectangle(矩形),在xml自定义时使用标签二 shape子元素1 cornerscorners用来绘制几何图形的四个角的弧度,其属性有:android:Radius                     设置四个角的半径

2017-08-12 17:00:31 337

原创 Android UI根据屏幕分辨率决定加载布局

Android中动态加载布局,可以提高用户的体验,在实际开发中,我们使用限定符来根据屏幕分辨率或者屏幕的大小决定加载那种布局,具体方法如下:1、在res文件夹下layout文件夹下放的xml布局文件是,android屏幕认为的小屏幕设备;2、在res文件夹下layout-large文件夹放的xml布局文件是,Android屏幕认为的large的设备3、除了以上两种,还有一种

2017-08-11 16:02:36 1700

原创 PreferenceActivity之 Subclasses of PreferenceActivity must override isValidFragment(String)

小石头的博客  http://blog.csdn.net/lu1024188315/article/details/74518599

2017-08-10 15:42:50 562

原创 PreferenceActivity

一 相应组件关系图:1 PreferenceGroup(1)方法public void setOrderingAsAdded(boolean orderingAsAdded)当一个preference被add进来的时候是否排序,如果是true 的话,那么对于那些没有order的将根据里面的preference的order 跟 默认字母进行排序  。在

2017-08-10 15:35:35 797

原创 android之混淆

一  什么是混淆    Java代码编译成二进制class 文件,这个class 文件也可以反编译成源代码 ,除了注释外,原来的code 基本都可以看到。为了防止重要code 被泄露,我们往往需要混淆(Obfuscation code ,也就是把方法,字段,包和类这些java 元素的名称改成无意义的名称,这样代码结构没有变化,还可以运行,但是想弄懂代码的架构却很难。 proguard 就是这样

2017-08-08 17:59:57 334

原创 AS混淆之transformClassesAndResourcesWithProguardForRelease

一 异常描述      最近在使用androidAnnotations注解框架做项目,在打包的时候出现了这个异常如下:Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'.> java.io.IOException: Can't write [/Users/

2017-08-08 17:32:51 995

原创 AS和Gradle Plugin不兼容

一 问题背景     因为项目app分包需要,将工程的graddle版本升至了2.2.0 alpha4,而我的Android studio 一向升级为最新版,于是就出现了题目中的报错:Error running app: This version of Android Studio is incompatible with the Gradle Plugin used. Try

2017-08-08 17:13:43 493

原创 图片处理框架之ImageLoader

一 前言      刚开始作android项目时使用就是ImageLoader来加载图片的,在其内部自动实现了图片的下载、缓存等功能,自己只需要配置一下缓存路径就可以,当时感觉这已经很牛掰了,现在己经出现了Glide、Picasso等图片处理框架,这些框架使用起来更加方便可靠,不过在很多的老项目中还有很多在使用ImageLoader,在此总结下,开源库:https://github.com/n

2017-08-08 09:36:04 568

转载 图片处理框架之picasso

一 前言      首发:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0731/1639.html      picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。仅仅只需要一行代码就能完全实现图片

2017-08-07 16:58:08 460

转载 图片处理框架之Glide

一 前言英文原文 Introduction to Glide, Image Loader Library for Android, recommended by Google首发地址  http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0327/2650.html       在泰国举行的谷歌开发者论坛上,谷歌

2017-08-07 15:59:00 526

原创 android 之 ActionBar

一  前言Action bar就是替换3.0以前的tittle bar和menu。App Icon:可显示软件icon,也可用其他图标代替。当软件不在最高级页面时,图左侧会显示一个左箭头,用户可以通过这个箭头向上导航。视图切换:如果你的应用要在不同的View中显示数据,这部分允许用户来切换View。一般的作法是用一个drop-down菜单或者是Tab Control

2017-08-03 15:09:38 841

原创 android之菜单(menu)

一 前言       菜单在桌面应用中使用十分广泛,在android中由于屏幕的限制,android 3.0之后,就不要求android手机上必须MENU键,加上ActionBar的出现,菜单在android手机上使用越来越少,那么为什么还要总结这个东西?本人开始做android项目的时候,也感觉这个东西可有可无(基本上都是自定义标题栏),即使在一些项目中出现过,也没有太关注,但学习andro

2017-08-02 14:48:58 847

原创 VIewAnimator及其子类

一 ViewAnimator的继承关系        --FrameLayout            --ViewAnimator                 --ViewSwitcher                              --imageSwitcher                              --Text

2017-08-01 16:51:19 348

tomcat插件

http://www.eclipsetotale.com/tomcatPlugin.html#A3 上面的插件不支持MAC上为Eclipse4.7(Oxygen)安装tomcat插件

2017-11-30

decompiler

AndroidCrackTool、dex2jar,文档说明http://note.youdao.com/noteshare?id=8267d97330079e5b67a42d36be2b0d06

2017-10-31

ksoap2-android-assembly

3.5版本ksoap2,ksoap2-android-assembly-3.5.0-jar-with-dependencies Android webservice支持包 直接放置libs可用

2017-09-21

AndroidAnnotations-3.2

AndroidAnnotations包要放到app/compile-libs(要自己建立该目录)下(可以不使用),AndroidAnnotations-api该包要放到app/libs。

2017-08-08

ImageLoader

图片加载工具包

2017-08-07

android深入理解卷1

android深入理解卷1

2017-07-03

android深入理解卷2

深入理解SystemServer、PackManagerService、PowerManagerService、ActivityService、ContentProvider等

2017-07-03

SystemServiceRegistry源码

SystemServiceRegistry源码

2017-06-30

Session源码

方便于找不到Session源码的同胞们!

2017-06-30

FindBugs工具

FindBugs

2017-06-27

BluetoothPrinter

使用蓝牙通信,实现便携式打印机文本打印。

2017-06-05

mac安卓链接工具

mac本和安卓系统手机连接工具

2016-10-17

左右侧滑可删除的ListView

实现工具Android studio , 可以添加左右侧滑删除、分享按钮的ListView

2016-08-29

类似ios进度条提示框

类似ios进度条提示框,as代码示例

2016-08-25

Android 6.0 运行时权限管理

实现工具Android studio ,Android 6.0在我们原有的AndroidManifest.xml声明权限的基础上,又新增了运行时权限动态检测,以下权限都需要在运行时判断:身体传感器、日历、摄像头、通讯录、地理位置、麦克风、电话、短信、存储空间,这里简单的写了案例!

2016-07-06

AutoCompleteTextView自定义Item的布局

实现工具Android studio,一般AutoCompleteTextView提示语列表的适配器只能系统提供的ArrayAdapter等,这里自定义适配器继承了BaseAdapter。

2016-03-31

高德关键字搜索

实现工具Android studio ,根据官网实现的,下载可以运行。

2016-03-09

类似ios滑动开关

实现工具Android studio ,开关有两种类型:矩形滑动开关,圆形滑动开关,可以通过自定义的属性值来设置,同样可以通过属性值来设置开关颜色等。

2016-03-08

自定义标签

Android,实现工具类Android studio,有单行显示、多行显示两种模式,代码有详细注释,参考于:https://github.com/kingideayou/TagCloudView

2016-03-07

FloatingWindow

悬浮窗口可以滑动、点击,实现工具Android studio 1.4

2016-03-04

自定义对话框

有时候,对于弹出框需要自定义,这里使用Android studio 简单的写个实例,仅供参考!

2016-03-01

日历选择器类似IOS

使用工具Android studio,类似IOS滚动选择日期,有四种选择模式,年月日时分,年月日,时分,月日时分。

2016-02-29

TabLayout和ViewPager实现Tabs切换

使用TabLayout和ViewPager实现Tabs切换使用起来很方便。

2016-01-25

TabsViewPager

使用TabLayout和RecyclerView来实现!

2016-01-25

android_手机本地视频列表

获取本地视频使用GridView展示出来,使用自定义VideoView播放视频

2016-01-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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