昨日朋友给我看了下这样的效果,我觉得很有意思,今日闲下来便写了这篇文章,并且传到了github,本文的末尾也附上了链接。网上有很多关于使用Gallery来打造3D画廊的博客,但是做出来的效果我不是很满意,有些许卡顿,索性就选择了viewpager来做,进入正题:下图为效果图。   一、要实现如下图的功能,需要以下3个方法: (1)public Object instantiateItem...

自定义View

自定义VIew

  

2019-06-09 00:09:03

目录 1. 自定义View的分类 自定义View一共分为两大类,具体如下图:  2. 具体介绍 & 使用场景 对于自定义View的类型介绍及使用场景如下图:  3. 使用注意点 在使用自定义View时有很多注意点(坑),希望大家要非常留意:  3.1 支持特殊属性 支持wrap_content  如果不在onMeasure()中对wrap_conte...

引言 在平常的开发中,我们总会有各种各样的按钮,圆角的、直角的、正常状态的、按下状态的、禁用状态的。一直的做法就是在drawable中写一个selector,然后用item加shap来实现。这种做法实现起来也是非常简单,但是存在一个问题:当我们shap文件有上千个的时候,我们应该如何维护? 分析 先上一张图吧: 仔细分析下来,图中的几个按钮都是差不多的,他们之间有着许多的相通点,像这种情况,我们真...

实现一个如下效果的折线图 这样的效果实现的方式很容易想到的就是重写 onDraw 方法,给定一组 float 值,分别画点、线,那么下面有颜色的阴影部分是用什么画呢,就用到了 Path, 一个点一个点相连成一个封闭的图形,便可画出这个图形。如果先画点,再画阴影部分,是会把点遮住一部分的,所以实现的时候先画完了阴影部分,再画线和点。不过这样子在 onDraw 方法里就有两个 for 循环,如果有好的...

自定义View 一

自定义view

  

2019-08-29 21:11:57

自定义View 学习链接 自定义控件 一般自定义会有onMeseaure、onLayout、onDraw三个方法需要复写,所以这三个方法还有View的构造函数就格外重要了 构造函数必须重写,一般为三个参数的那一个譬如:CustomView(Context context,AttrArray a,int defaultStyle); 构造函数不用看了,我们用在xml里就是三个参数的,用在java代码...

自定义View 分发事件处理 叨叨 每定义一个View除了绘制我们还需要处理他的点击事件,特别是继承View而非其他控件的时候。 同时,我们应该知道在屏幕上我们是一层套一层,那么当我们屏幕点击下去的时候,这个时候应该是哪一个去处理?这里就有了我们的分发事件。 先看一张图。 如何产生的分发事件呢?就是在我们点下屏幕的那一刻,android给我们封装好了MotionEvent事件,有四个基本值用到: ...

介绍一个带加载功能的按钮控件的实现原理,加载动画来自于CircularProgressDrawable 效果图(最终效果图在最后面) 实现原理 加载圆环就是用setCompoundDrawables放到TextView的drawablewStart中,文字将的Gravity设置Center 结果效果是这个样子的: 看来实际的效果与我们想象中的不太一样,原来Drawable在一开始我们并没有设置它的...

刚开始宽高一直设置不对,后来画了个图,算了一下到底应该是多少,才弄对,看来数学还是很有用的。 效果图:     原图是没有变形的,一个正圆的圆环,不知道上传之后会变成什么样子。...

已经有一段时间没有给大家更新博客了,貌似自从学校的实训一开始就一直没有心思去学新的东西和写博客,因为这段时间一直都有很多事情要忙,而且笔者马上就要开始实习工作了,可能心理上也是有一定的压力哈哈。现在事情都处理的差不多了,可以重操旧业专心学习了!!!!! 今天给大家带来的是如何关于自定义View的文章,之后笔者会将动画和自定义View的文章陆陆续续整合到一起,方便大家阅读。 目录 自定义View简介...

利用Xfermode实现水波纹动画 文末有详细的代码+注释 该view用了两种方法来实现,一种是利用Xfermode来实现,还有一种利用canvas的clipPath()方法来实现,本次先用Xfermode来分析实现,: 先上效果图,gif图看到有锯齿,不知道是录屏的原因还是什么别的,在真机上是看不到锯齿的 首先是第一种利用Xfermode方法的实现: 主要步骤分为如下几步: 首先绘制圆形水波纹动...

大家都知道Math类中有三角函数和反三角函数的公式,但笔者小白,在使用的Math类时候发现和我们正常数学不太一样,本篇就为记录Math类的三角函数已经反三角函数的使用:   Math:       举个三角函数的例子:     上面使我们经常会使用到的sin()正弦三角函数的Math源码;我们在数学中是填入一个角度值,又上面的注释我们可以...

自定义View

自定义View

  

2019-10-22 18:34:41

  在自定义View时, 我们通常会去重写onDraw() 方法来绘制View的显示内容。 如果该View使用wrap_content 属性, 那么还必须重写 onMeasure()方法。 另外可以通过自定义attrs 属性,可以设置新的属性配置值。 如下:     在View中通常有以下一些比较重要的回调方法:        ...

自定义的View练习

自定义View

  

2019-10-28 05:03:46

部分资料  来自安卓群英传  https://blog.csdn.net/a120705230/article/details/51970864 部分资料来自于在那桌开发艺术探索 一\实现一个简单的自定义View---画一个圆 attrs自定义属性文件 位置在value文件夹下,一般取名风格,attrs_circle.xml 在构造器中通过 TypedArray a=conte...

Android自定义View详解

自定义View

  

2019-11-12 07:10:12

一、自定义View基础 1、分类 自定义View的实现方式有以下几种: 自定义组合控件: 多个控件组合成为一个新的控件,方便多处复用 继承系统View控件: 继承自TextView等系统控件,在系统控件的基础功能上进行扩展 继承View: 不复用系统控件逻辑,继承View进行功能定义 继承系统ViewGroup: 继承自LinearLayout等系统控件,在系统控件的基础功能上进行扩展 继承Vie...