Android-自定义View集合

学习安卓几个月了,也有点自己的体会,然而我发现自己真正喜欢的是数据方面的东西,当然android自定义view也很好玩,很体验一些技巧性的东西。也不想自己以前学习过程总结的东西就此淹没,于是我就决定把自己的一些在android研究过的东西全部都分享出来啦。这个是自定义View系列,如果觉得我写的还行的话,可以在一起讨论,我还是可以帮忙写下一些特别的点的自定义view的。


文章结构:1.罗列分享我学习过程中写的自定义view;2.针对个别特殊的自定义view讨论下重要的思路部分;3.给出一些自定义view学习资源汇总;4.我学习自定义view的库,喜欢的支持的可以给下star或fork啦。


一、罗列分享我学习过程中写的自定义view

如下图:根据图中的去按照我的文章分点,以及最后给的源码结合来看吧,里面有我学习过程中的很多解释,虽然有的有点啰嗦,但很完整体现了我的思路了。

这里写图片描述

这里写图片描述

二、针对个别特殊的自定义view讨论下重要的思路部分

(1)上面两个仿美团上方栏的效果:

第一个方案的 是xml中用radiobutton强制写死了大概多少个滑动页面的引导小圆点,这种方案可见复用性不高。实现步骤是:1.编写页面,使用一viewpager和一radiogroup组合做出效果;2.重要的是自定义viewpager的适配器;3.在controller的activity中实现耦合,往viewpager加入gridview,将gridview传给viewpager的适配器,用radiogroup的基本逻辑实现引导的小圆点UI。
第二种方案是我反编译了一下美团,看了下他们的大致布局,以及耦合的代码,实现的仿造。大致过程还是跟第一个方案相同,不过在小圆点的实现,参考它们的多重复用性方案。就是用一个小圆点数组,在controller那里实现绑定每个gridview。

(2)自定义Textview的字体,我以前写过了。Android-自定义TextView(彩色字体与霓虹灯字体以及TextView的多项字体效果)

(3)手动控制圆和圆形进度条也写过啦。 Android-自定义view之圆(选择程度圆以及进度圆)

(4)圆形头像也是写过了。 Android-解析自定义view之圆形头像的各类方案

(5)卫星导航栏。是以前项目移植过来的一个东西。很有趣的一个东西。重点是:重写relativelayout和用viewgroup实现自己的卫星布局。过段时间会针对这个写下文章。

(6)流式布局。鸿洋大大讲得很好

(7)水波纹。嘻嘻,这个要求是往下兼容,我用自己思路实现了一个,虽然很多人做项目都是照搬v7包,然后直接往下兼容,可是这种自定义view的会给我们加深认识安卓的底层绘图机制,继承机制的理解呀。

核心是:使用监听事件,利用不断重绘,并且要不断地清理画布的数据,不然会oom的。那个波纹的效果其实就是不断地画圆形,还要计算点击的点,计算半径,然后传递事件给dispatchDraw,不断重绘。

(8)图片轮播,这个很多人在开发的时候也是照搬第三方的库的,然而并不好,就不多说了。我们来讨论下它的核心思路:(具体看源码有详细的思路解释)

1.自定义viewpager和自定义viewpager的适配器,其中轮播器实现的:轮播器最重要的几个特点就是:自动滚动、手动滑动、滚动方向、每个Item显示时间。2.在viewpager中实现的定时轮播,写个定时器去执行他;3.一个线程安全的播放方法,根据我们设置的向标记量去轮播(向左向右向上向下)。

(9)recyclerview,鸿洋大大的完美解释。鸿洋大大的recyclerview

有能力的朋友,最好也把鸿洋大大的recyclerview封装也看了,我在项目中用了,阅读大大的思路真的真的很棒!!鸿洋大大的recyclerview封装

(10)接下来就是圆形菜单的,我基于鸿洋大大的一些思路根据实际需求做了一个限制级的圆形菜单。以前也解析过啦。 Android-自定义view之圆形与“半圆形”菜单


三、给出一些自定义view学习资源汇总:

初步接触自定义看的东西:首先要清楚为什么要自定义view,什么是自定义view啦。给出博客你看:

总的我们要三步骤:一、自定义控件;二、自定义布局;三、深研自定义机制。

1.基础一

2.然后基础二

3.了解大概后,接着你就要系统一下看看自定义有多少东西。启航的系列很详细

4.开始实现自己的自定义控件啦:三种自定义方式:扩展,组合,重写

5.自定义布局从LinearLayout谈起

6.在这过程中见识各个android大佬的自定义:搜下博客之星,前几的基本都是android的啦。

7.深入自定义机制:(从个别方法到事件传递机制)

(1)getWidth和getMeasuredwidth方法:http://blog.csdn.net/u011494050/article/details/39134161

http://blog.sina.com.cn/s/blog_6e519585010152s5.html

(2)LayoutParams:http://blog.csdn.net/liuhaomatou/article/details/22899925
(3)onTouchEvent和OnTouch区别:http://blog.csdn.net/huiguixian/article/details/22193977
(4)Invalidate和postInvalidate的区别:http://www.jianshu.com/p/457d74f443e2
(5)事件传递机制:http://blog.csdn.net/yanzi1225627/article/details/22592831

大致就是这个步骤啦。过程很艰辛,但果实很好吃。


四、给出我学习过程的自定义库咯。

喜欢的给下star或者fork咯,如果有朋友告诉我要写些特别点的控件,我会尽力写下,然后继续放到那个库中,给大家一起学习。

我的自定义学习库,github地址:辅助的自定义view系列

我会把自己写的学习的总结的自定义view更新给大家,一起学习!!喜欢的可以star或者fork下咯,也算对我的支持,哈哈,谢谢大家。

好了,Android-自定义View学习分享讲完了。本博客是博主这6个月学习安卓以来的自定义view部分,并在这里做出进一步拓展以及写出自己的理解。欢迎在下面指出错误,共同学习!

转载请注明:【JackFrost的博客】

更多内容,可以访问JackFrost的博客

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,116评论 25 707
  • 三十多岁的人了,却一直都是在浑浑噩噩的过日子,不知道自己内心真正想要的生活是什么。 原本以为,和他一起...
    姆比尼菇凉阅读 101评论 0 0
  • 店里的老鼠好像挺多的,每到有点夜深的时候,就听见他们在天花板上面跑,应该是老鼠吧,如果不是的话,那只能说是错怪你了...
    OC老陈阅读 154评论 0 0
  • 他是我外公,此时他的照片被挂在大厅的中央,我深知,那是他的遗像。 一直以来,我深深的爱着他,这份爱一直藏在内心,直...
    导演也是剧中人阅读 187评论 1 5
  • 南方的大学,春景绮丽,本人拍了许多照片,分享一下。 照片有点多,没来得及调光,自然效果哦!
    吾栖梦阅读 355评论 1 3