自定义AutoScrollTextView继承至TextView,在onDraw()中设置文字的X轴偏移量加1并刷新,以实现文字从右向左移动的效果。
public class AutoScrollTextView extends TextView implements OnClickListener {
private String Tag = "AutoScrollTextView";...
分类:
移动开发 时间:
2016-05-12 21:03:37
阅读次数:
307
实现一个如图所示的控件,包括两部分,左边的饼状图和中间的两个小方块,及右边的两行文字
实现起来比较简单,只是一些绘图API的调用
核心代码在onDraw函数里边,,对静态控件进行绘制即可
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
/*饼状图的x坐标*/
fl...
分类:
移动开发 时间:
2016-05-12 19:01:27
阅读次数:
259
1、绘制圆形
lang="en"> charset="UTF-8"> canvas1 function draw(id){ var canvas = document.getElementById(id); if(canvas == null){ return false; ...
分类:
其他好文 时间:
2016-05-12 15:39:54
阅读次数:
221
一般使用自定义View需要重写onDraw()函数,如果需要使用wrap_content样式,则还需要重写onMeasure函数。通常我们绘制一个圆环是通过绘制两个半径不同圆心相同的颜色不一样的圆下面介绍使用canvas.drwARc()函数绘制圆环(或者圆弧)canvas.drawArc(rectF,startDegree,60,false,mPaint);该函数有四个参数
参数1:一个Rect...
分类:
移动开发 时间:
2016-05-12 13:41:28
阅读次数:
180
整个View树的绘图流程
是在ViewRoot.Java类的performTraversals()函数展开的
performTraversals()执行过程
判断是否需要重新计算视图大小(measure)是否重新需要安置视图的位置(layout)是否需要重绘(draw)
mesarue()
树形递归过程
作用
为整个view树计算实际大小 -> 设置实际的宽高【mMeasur...
分类:
移动开发 时间:
2016-05-12 13:41:21
阅读次数:
181
在原来的OpenGL渲染的pipeline并没有提供较多的交互接口,当调用Draw函数之后很难再绘制过程对已经装配的图元进行修改。然而,在绘制过程中存在这样的需求,尤其是需要根据之前装配好的图元来更新随后的操作。举个简单的例子,当一个场景中存在两个相对运动的物体时,后一个物体需要根据前一个物体的运动来决定自己的运动轨迹,因此需要有一种feed back来提升交互能力。Transform feed ...
分类:
其他好文 时间:
2016-05-12 12:27:34
阅读次数:
199
1.自定义控件有一个方法是在原生控件的基础上进行的拓展,增加新的功能,修改显示的UI等,一般我们可以子啊onDraw()方法中队原生的控件进行的拓展。2.下面以为textvew的背景增加更多的颜色为例:如何实现:当我们自定义的view继承TextView的后,若不重写onDraw()方法,则不会修改TextView的任何效果。
@Override
protected void onDraw...
分类:
其他好文 时间:
2016-05-10 02:32:49
阅读次数:
119
boost库很好的支持C++的命令行解析,能使我们的程序用起来更酷。最近一直想Python里也用上命令行,这样就不用再IDE里修改输入参数了。记得前面介绍过使用os模块也能解析命令行,但是那个比较简单,今天我们介绍的argparse模块是python中专门用来解析命令行的。
首先给大家贴出一段代码及运行结果,让大家有一个直观的感受。
#!/usr/bin/env python
"""
Draw...
分类:
编程语言 时间:
2016-05-07 10:22:47
阅读次数:
375
onFinishInflate() 回调方法,当应用从XML加载该组件并用它构建界面之后调用的方法 onMeasure() 检测View组件及其子组件的大小 onLayout() 当该组件需要分配其子组件的位置、大小时 onSizeChange() 当该组件的大小被改变时 onDraw() 当组件将 ...
分类:
移动开发 时间:
2016-05-06 20:20:18
阅读次数:
176
1.自定义view的步骤:a.在values/attrs.xml文件中创建自定义的属性;
b.自定义view,在view的构造方法中获取到自定义的属性;
c.重写onDraw()方法;
d.重写onMeasure()方法。
在values/attrs.xml文件中创建自定义的属性
<attr n...
分类:
其他好文 时间:
2016-05-06 16:05:52
阅读次数:
244