- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
简单图形图像 知识导图 简单图形图像示例 简单图形图像 简单图形图像 简单图形图像 简单图形图像 简单图形图像 简单图形图像 自定义绘图 * * * 倚动软件工厂实验室 QQ群:287966120 Q Q号: 1281147324 逐帧动画 简单图片 作为一款注重用户体验的应用程序,当然离不开图形、图像的支持。在Android中对图形、图像提供了多种支持,一般使用Bitmap和BitmapFactory方法来封装和管理位图,通过Animation和AnimationDrawable类来保存和控制逐帧动画,使用Canvas和Path两个类绘制各种各样的图形,其中,Canvas可以绘制一些常见的规则图形,而Path则用于绘制一些不规则、自定义的图形。 静态图片即图片内容不发生变化的图片,通常用于显示、增添界面美观,例如图标、背景等。对于这种类型的图片通常由一些图片控件进行处理,如ImageView等。 动态图片即内容、大小、位置等会随着时间而变化的图片,一般采用不断重新绘制的方式来处理,每隔多少毫秒绘制一次,给人的感觉就是连续变化的。 图片不仅可以使用ImageView等图片控件显示,也可以作为Button、TextView等控件的背景。从广义的角度来看,Android应用中图片不仅包括*.png(首选)、*.jpg、*.gif(不建议)等格式的位图,也包括使用XML资源文件定义的各种Drawable对象。 逐帧动画是一种常见的动画形式,其原理是利用人的视觉的滞后性,在时间轴的每帧上绘制不同的内容,然后在足够短的时间内进行播放,给人的感觉就如同连续的动画。 由于逐帧动画的帧序列内容不一样,这不但给制作增加了负担而且最终输出的文件量也很大,但它的优势也很明显:逐帧动画适合于表演细腻的动作。例如:人物走路、说话,动物奔跑等 在Android中操作图片是通过Drawable类来完成的,Drawable类有很多子类,如BitmapDrawable类用于操作位图,AnimationDrawable类用于操作逐帧动画,ShapeDrawable类用于操作形状。 Android不允许图片资源的文件名中出现大写字母,且不能以数字开头。 需要指出的是,R.drawable.Xxx只是一个int类型的常量,代表该Drawable对象的ID,如果在Java程序中需要获得实际的Drawable对象,则可以调用getResources () 方法再调用Resources的getDrawable(int ID)方法来获取。 Drawable对象 (2)Bitmap和BitmapFactory Bitmap用于表示一张位图,BitmapDrawable用于封装一个Bitmap对象。 如果想将Bitmap对象包装成BitmapDrawable对象,可以调用BitmapDrawable的构造方法。 BitmapDrawable bd=new BitmapDrawable(Bitmap bitmap); 如果需要获取BitmapDrawable包装的Bitmap对象,可以调用BitmapDrawable的getBitmap()方法。 Bitmap bitmap=bd.getBitmap(); Bitmap提供了一些常用方法 强制一个Bitmap对象立即回收自己 recycle() 返回该Bitmap对象是否已被回收 isRecycle() 获取位图的宽度 getWidth() 获取位图的高度 getHeight() 创建一个宽为width,长为height的新位图 createBitmap (int width, int height, Bitmap.Config config) 从原位图source的指定坐标点 (x,y) 开始,截取宽为width,长为height的部分,创建一个新的Bitmap对象 createBitmap (Bitmap source, int x, int y, int width, int height) 描述 方法 BitmapFactory是一个工具类,该类所有的方法都是静态方法,这些方法可以从不同的数据源来解析、创建Bitmap对象,如资源ID、路径、文件和数据流等方式。 从指定的输入流解析,创建一个Bitmap对象 decodeStream (InputStream is) 从指定的资源ID中解析创建Bitmap对象 decodeResource (Resources res, int ID) 从pathName指定的文件中解析,创建一个Bitmap对象 decodeFile (String pathName) 从指定的data字节数组的
您可能关注的文档
最近下载
- 小学科学人教鄂教版六年级下册第一单元《生物与环境》教案(2023春.pdf VIP
- 人教鄂教版科学六年级下册第一单元生物与环境单元教案.pdf VIP
- 一例高血压患者的护理个案.docx VIP
- 青岛版六年级下册科学《生物与环境》大单元教学方案与反思.docx VIP
- 甘肃《建筑抗震加固工程消耗量定额》.pdf
- 高中英语1.5万考点.pptx VIP
- 新人教鄂教版六年级下册科学第一单元《生物与环境》全单元课件.pptx VIP
- CFMOTO春风动力450SR S CF400-9(6AQV-380101-3000-11 CN233)摩托车使用手册.pdf
- 水电站砂石系统施工组织设计(221页).docx VIP
- 2024新人教版初中英语七年级下册重点知识点归纳(复习必背).pdf VIP
文档评论(0)