自定义view实现涂鸦功能,包括撤销、恢复、重做、保存以及橡皮擦(在风格中实现)功能,小模块包括画笔颜色调整、画笔尺寸调整、画笔类型(包括正常画笔以及橡皮擦功能),之后又陆续实现了画圆、画矩形以及画箭头的功能,这里我们先完成前面的需求
撤销:
/**
* 撤销
* 撤销的核心思想就是将画布清空,
* 将保存下来的Path路径最后一个移除掉,
* 重新将路...
分类:
其他好文 时间:
2016-05-30 15:38:05
阅读次数:
313
相信每一位从事Android开发的猿都遇到过需要自己去自定义View的需求,如果想通过xml指定一些我们自己需要的参数,就需要自己声明一个styleable,并在里面自己定义一些attr属性,这个过程相信大家都比较了解。当然,属性其实也不一定需要和View配合使用,比如我想通过一个Theme中的st ...
分类:
移动开发 时间:
2016-05-30 12:53:30
阅读次数:
349
这一章分三部分: (1)自定义控件:老师先简单讲解了一些细节,如为什么不用px,而要用dp,只因机型的屏幕分辨率不同,用px会导致差异太大。然后演示了制作自定义控件的步骤,先在xml文件中添加对应的自定义View类,并给出画布大小,然后在.java中onDraw,值得注意的是onDraw中的坐标都是 ...
分类:
移动开发 时间:
2016-05-29 19:38:51
阅读次数:
265
效果图实现代码public class ScrollBanner extends LinearLayout { private TextView mBannerTV1;
private TextView mBannerTV2;
private Handler handler;
private boolean isShow;
private int startY1...
分类:
其他好文 时间:
2016-05-27 09:39:37
阅读次数:
130
ViewRoot和DecorViewViewRoot对应于ViewRootImpl类,是连接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRoot来完成的。在ActivityThread中,当Activity对象被创建完毕后,会将DecorView添加到Window中,同时会创建ViewRootImpl对象,并将ViewRootImpl对象和DecorVie...
分类:
移动开发 时间:
2016-05-26 17:16:45
阅读次数:
424
在measure中测量View的大小之后进入到layout阶段确定了View的位置。完成这 两步之后就进入到了我们相对熟悉的draw阶段,在该阶段真正地开始对视图进行绘制。
按照之前的惯例,我们来瞅瞅View中draw( )的源码
public void draw(Canvas canvas) {
final int privateFlags = mPrivateFlag...
分类:
其他好文 时间:
2016-05-26 10:25:44
阅读次数:
147
可以说重载onMeasure(),onLayout(),onDraw()三个函数构建了自定义View的外观形象。再加上onTouchEvent()等重载视图的行为,可以构建任何我们需要的可感知到的自定义View。
本节我们探索自定义View中onMeasure()起到了什么样的作用,题外要插的一句是,Activity框架,View框架中大量的on函数基本上都应用到了Template模式(模板设计...
分类:
其他好文 时间:
2016-05-26 06:26:00
阅读次数:
283
转载请标明出处:
http://blog.csdn.net/xmxkf/article/details/51468648
本文出自:【openXu的博客】
目录:onMeasure什么时候会被调用
onMeasure方法执行流程
MeasureSpec类
从ViewGroup的onMeasure到View的onMeasure
ViewGroup中三个测量子控件的方法
getChi...
分类:
移动开发 时间:
2016-05-24 17:02:08
阅读次数:
561
作为自定义 view 的基础,如果不了解android view 的生命周期 , 那么你将会在后期的维护中发现这样那样的问题 ....... 做过一段时间android 开发的同学都知道,一般 onXXX 函数都是系统的回调函数。而这篇 blog 也是基于这个思想(或许有点笨)...... 首先来看 ...
分类:
移动开发 时间:
2016-05-23 21:01:00
阅读次数:
234
有关使用Android如何设计出有个性的界面,按照本人估计,除了遵循google的设计规范,就只能使用自定义View这个最灵活的方式了,这几天找了些资料学习自定义View,但是学习android developer文档中自定义的View比较麻烦,又找了些比较简单的材料,结合自己对CustomView ...
分类:
移动开发 时间:
2016-05-23 18:38:07
阅读次数:
344