android移动技术及应用.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android移动技术及应用 项目六绘图模块搭建 ?相关知识介绍 ?项目搭建 ?实训任务 ?相关知识介绍 ?自定义View 在日常的Android开发中会经常和控件打交道,有时 Android提供的控件未必能满足业务的需求,这个时候就需要 自定义一些控件,先来了解一下自定义控件的要求和实现的 基本原理。 自定义控件需满足以下要求 ?应当遵守Android标准的规范(命名,可配置,事件处理等); ?在XML布局中可配置控件的属性; ?对交互应当有合适的反馈,比如按下,点击等; Android版本很多 , Android版本很多 ,应该具有匚泛的适用性。 Android所有的控件都是View或者View的子类,它其实表示的就是屏 幕上的一块矩形区域,用一个Rect类对象来表示:left , top表示View相对 于它的parent View的起点,width , height表示View自己的宽高,通过这4 位置后就可以开始绘制View 的内容了。 创建自定义控件的3种主要实现方式: 1 )继承已有的控件来实现自定义控件:当想要实现的控件和已有的控 件在很多方面比较类似,通过对已有控件的扩展来满足要求。 2)通过继承一个布局文件实现自定义控件,一般来说做组合控件时 可以通过这个方式来实现。注意此时不用on Draw方法,通过inflatcrjQ载 自定义控件的布局文件,再调用addView(view)函数,自定义控件的图形 界面就加载进来了。 3 )通过继承View类来实现自定义控件,使用GDI绘制出组件界面, 一般无法通过上述两种方式来实现时使用该方式。 Paint类是一个非常常用的类,一般用来设置绘制风格,例 如画笔颜色、笔触粗细、填充风格等,它可以将View上的n 个点连成一条路径”,然后调用Canvas的drawPath。方法即可 沿着路径绘制图形。 方法 setAntiAlias setColor setARGB setAlpha setTextSize setStyle setStrokeWidth 说明 设置画笔的锯齿效果 画笔颜色 设置画笔的a,r,p,g值 设置Alpha值 设置字体尺寸 设置画笔风格,空心或者实心 设置空心的边框宽度 Android中,如果想绘制复杂的自定义View或游戏,就需 要熟悉绘图API。Android的Canvas类有很多draw方法,可以 通过这些方法绘制各种各样的图形。 Canvas绘图三个基本要素:Canvas、绘图坐标系、Painto Canvas是画布,通过Canvas的各种draw方法将图形绘制到 Canvas±面,在draw方法中调用需要绘制的图形的坐标形状 和画笔Paint类。传入其中的坐标决定了要绘制的图形的形状, 比如drawCircle方法可以用来绘制圆形,需要设置圆心的x和y 坐标,以及圆的半径。draw方法中传入的画笔Paint决定了绘 制的图形的一些外观,比如绘制的图形的颜色,粗细等。 想要使用Canvas绘图,还需要先了解坐标系,Canvas绘 图有两种坐标系:Canvas坐标系与绘图坐标系。 Canvas坐标系指的是Canvas本身的坐标系,Canvas坐标 系有且只有一个,且是唯一不变的,其坐标原点在View的左 上角,从坐标原点向右为x轴的正半轴,从坐标原点向下为y 轴的正半轴。 Canvas的draw方法中传入的各种坐标指的都是绘图坐标系中的坐标,而 非Canvas坐标系中的坐标。默认情况下,绘图坐标系与Canvas坐标系重合, 即初始状况下,绘图坐标系的坐标原点也在View的左上角,从原点向右为x 轴正半轴,从原点向下为y轴正半轴。但不同于Canvas坐标系,绘图坐标系 并不是一成不变的,可以通过调用Canvas的translate方法平移坐标系,可以 通过Canvas的rotate方法旋转坐标系,还可以通过Canvas的scale方法缩放坐 标系。 要注意的是,translate, rotate, scale的操作都是基于当前绘图坐标系的, 而不是基于Canvas坐标系,通过以上方法对坐标系进行了操作之后,当前绘 I坐再枣就不再是之前旌座标系了 后绘图者B是基于更新的绘图坐标系了 o 12V企想学院■所以,真正 12 V 企想学院 方法 说明 canvas?drawLine(float startX, float startY, float stopX, float stopY, Paint paint) 绘制直线 canvas.drawRect(float left, float top, float right, float bottom. Paint paint) 绘制矩形 canvas.drawCircle(float ex,

文档评论(0)

scj1122111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8113057136000004

1亿VIP精品文档

相关文档