自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 ColorFilter的简单用法 实现美图效果

这里实现了三种效果第一种是通过三个seekbar分别调整图片的色相、饱和度、亮度第二种通过颜色矩阵调整第三种不同的算法实现的不同的图片处理效果我们队图片的处理的效果都是通过改变它的每个像素的RGBA值下面直接上代码,代码的注释很详细项目地址:github  https://github.com/xin917480852/ColorFilter

2016-04-28 16:22:12 679

原创 Github for windows的使用

在android studio中是有内置的上传项目到Github的,但是一直上传失败,只能上传项目的名称,但是代码上传不了,所以使用了Github for windows一:下载GitHub for Windows 2.0         二:安装GitHub     下载之后点击进行安装过程,安装之后桌面上会有两个图标,分别是  和  。

2016-04-28 16:05:38 1096

原创 Scaledrawable

对另一个drawable资源,基于当前的level,进行尺寸变换的drawable。语法元素: 定义一个ScaleDrawable,必须作为根元素。android:drawable Drawable 资源。必须的。引用一个drawable资源。android:scaleHeight 缩放的高度,以百分比的方式表示drawable的缩放。形式例如:100%,12.

2016-04-26 19:39:18 387

原创 Rotatedrawable详解

对另一个drawable资源,基于当前的level,进行旋转的drawable语法元素:定义一个RotateDrawable,必须作为根元素。属性:xmlns:androidString类型。 必须的。定义XML文件的命名空间。必须是"http://schemas.android.com/apk/res/android".android:dr

2016-04-26 18:52:27 2386

原创 InsetDrawable详解

InsetDrawable 表示一个drawable根据指定的距离嵌入到另外一个drawable内部。(我们看到的其实还是同一张图片,只是会空出一些边距)当控件需要的背景比实际的边框小的时候比较适合使用InsetDrawable。很像drawable的padding属性,区别在于 padding表示drawable的内容与drawable本身的边距,insetDrawable表示两个drawa

2016-04-26 11:48:00 2902

原创 clipDrawable详解

ClipDrawable 是对一个Drawable进行剪切操作,可以控制这个drawable的剪切区域,以及相相对于容器的对齐方式,Android中的进度条就是使用一个ClipDrawable实现效果的,它根据level的属性值,决定剪切区域的大小ClipDrawable是根据level的大小控制图片剪切操作的 level的大小从0到10000,level为0时完全不显示,为10000时完

2016-04-26 11:10:57 1101

原创 设计模式-13-代理模式

代理模式原理:多一个代理类出来,替原对象处理操作,代理对象可以在客户端和目标对象中起到中介的作用 分为静态代理和动态代理结构:抽象角色:声明真实对象和代理对象的共同接口代理角色:代理对象角色内部含有真实对象的引用,从而可以操作真实对象。同时代理对象可以在操作真实对象的时候,附加其他操作,相当于对真实对象进行封装真实角色:代理角色所代表的真实对象,是我们最终要引用的对象

2016-04-21 20:59:29 376

原创 手把手教android studio中安装Android Butterknife Zelezny

用来快速生成findViewById()安装方法:打开android studio 左上角File-settings-选择Plugins搜索Android ButterKnife Zelezny然后安装重新启动android studio第二步:网上看了很多都是少了这个步骤,要添加一个compile 'com.jakewharton:butterknife:7.0.

2016-04-17 23:51:20 4494 3

原创 设计模式-12-状态模式

状态模式:原理:一个对象在其内部状态改变的时候改变其行为结构:环境角色(Context):定义客户端感兴趣的接口,并保留一个具体状态类的实例抽象状态角色(State):定义一个接口,用以封装环境对象的一个特定状态所对应的行为具体状态角色(ConcreteState):每一个具体状态类都实现了环境的一个状态所对应的行为一个环境角色包含抽象状态角色的引用,然后在

2016-04-14 15:57:21 295

原创 Handler详解

Handler是什么Handler是android提供给我们用来更新UI的一套机制Handler是android提供给我们的一套消息处理机制:可以发送消息也可以处理消息例如:Activity的生命周期回调方法都是通过Handler机制进行发送消息的,然后根据不同的Message进行分支处理为什么要用HandlerAndroid在创建的时候就封装一个一套消息发送、传递、处理的机制

2016-04-12 09:47:49 402

原创 设计模式-11-组合模式

组合模式原理:又叫做部分-整体模式,将对象组合成树形结构以表示“部分整体”的层次结构例如:文件系统由目录和文件组成,目录可以装内容,内容可以是目录或者文件,按照这样看的话我们的文件系统就是以递归的结构来组织的。如果想使用这种数据结构那么我们就可以使用组合模式结构:Component:是组合中对象的声明接口,实现所有类共有接口的默认行为  声明一个接口用于访问和管理Compo

2016-04-10 20:27:33 263

原创 设计模式-10-迭代器模式

迭代器模式原理:提供一种方法访问一个容器对象中各个元素,而又不暴露该对象的内部细节结构抽象容器:一般是一个接口,提供一个iterator()方法   例如java中的Collection、Set、List等接口具体容器:抽象容器的具体实现类,例如java中LinkList、ArrayList、HashSet抽象迭代器:定义遍历函数所需要的方法如:获取第一个元素、取得下一

2016-04-09 13:06:01 257

原创 MD-Snackbar的使用

Snackbar是用来取代Toast的,官方推荐和CoordinatorLayout一起使用在,这样可以让用户右滑退出Snackbar代码示例xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayout android:id="@+id/container"

2016-04-07 11:40:33 449

原创 设计模式-9-模板模式

模板模式原理:在一个方法中定义了一个算法的骨架或者步骤,而将一些步骤延迟到子类中去实现模板方法可以使得子类在不改变算法结构的情况下,重新定义算法中某一些步骤结构模板方法中的方法可以分为两类:模板方法和基本方法(基本方法又可以分为抽象方法、具体方法、钩子方法)模板方法:一个模板方法是定义在抽象类中的,把基本方法组合在一起形成一个总算法或者总行为的方法         

2016-04-06 17:31:26 297

原创 设计模式-8-外观模式

外观模式原理:隐藏系统的复杂性,并向客户端提供一个客户端可以访问系统的接口(为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这个子系统更容易的使用)结构外观角色(Facade):它被客户Client角色调用,知道各个子系统的功能。同时根据客户的需求预定了几种功能组合子系统角色(Subsystem classes):实现子系统的功能,并处理由F

2016-04-06 16:13:42 343

原创 android中关于weight宽度的算法

在之前的学习中一直对weight的宽度存在误解导致有些时候控件的宽度与自己设想的事与愿违,今天刚好看到weight宽度的算法,在这里记录一下xml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="ma

2016-04-05 16:44:44 1144

原创 设计模式-7-适配器模式

适配器模式原理:把一个类的接口变成客户端所期待的另外一个接口,从而使原本接口不匹配而不能在一起工作的两个类能够在一起工作结构目标接口(Target):客户所期待的接口需要适配的类(Adaptee):需要适配的类适配器(Adapter):通过包装一个需适配的类,把原接口转换成目标接口例子:比如一个Adaptee是工人,他所掌握的技能有:打代码和查找Bug,

2016-04-01 15:47:00 255

原创 设计模式-6-命令模式

命令模式原理:每一个命令都是一个操作,请求的一方发出请求要求执行一个操作,接收的一方收到请求并且执行操作用在一个请求者 请求 接收者调用其方法完成某项任务的模式在这个过程中请求者和接收者不直接打交道而是把这个请求封装到一个命令的对象中,然后在这个对象中条用接收者的操作方法结构接收者:接收者是一个类的实例,该实例负责执行与请求相关的操作命令:命令是一个接口,负责封装请

2016-04-01 14:53:49 196

空空如也

空空如也

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

TA关注的人

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