电子课件-第八章图形图像处理及动画设计.pptx

上传人(卖家):晟晟文业 文档编号:5164658 上传时间:2023-02-15 格式:PPTX 页数:17 大小:2.21MB
下载 相关 举报
电子课件-第八章图形图像处理及动画设计.pptx_第1页
第1页 / 共17页
电子课件-第八章图形图像处理及动画设计.pptx_第2页
第2页 / 共17页
电子课件-第八章图形图像处理及动画设计.pptx_第3页
第3页 / 共17页
电子课件-第八章图形图像处理及动画设计.pptx_第4页
第4页 / 共17页
电子课件-第八章图形图像处理及动画设计.pptx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、2015年1月第八章 图形图像处理及动画设计图形图像处理机动画设计WWW.TEDU.CN自定义View就是继承一个View的子孙类或View类,然后重写其中的一些方法,来完成界面美观效果。Android中,可以用自定义View的技术轻松地创建定制化的控件,创造自定义的控件步骤:最开始要建立一个基于View或其子孙类的子类。在XML文件中定义属性和参数,也可以在Java代码中调用方法来设置。在界面的XML布局文件中,使用标签将自定义的View加入到界面中。如果有必要的话,需要编写事件监听器和修改一些方法。一般地,都需要重写onMeasure()和onDraw()两个方法,它们关系到自定义View

2、中界面如何绘制。有必要的话,其他的以on开头的方法也需要重写。图形图像处理及动画设计 自定义自定义ViewonDraw()方法将会传送一个Canvas对象,通过它即可在2D图形上做任何事情,任何可以想到的东西都可以通过它呈现。onMeasure()方法较为复杂一些,因为这个方法是呈现组件和容器互动的关键部分,onMeasure()应该被重写,让它能够有效且准确的表现它所包含部分的测量值。一旦测量宽度和高度出来后,就要立即调用setMeasuredDimension()方法图形图像处理及动画设计 自定义自定义ViewCanvas就像手机中的画布,我可以在Canvas上绘制图形或者图片。View类

3、的onDraw()方法会传入一个Canvas对象,用来绘制组件界面的画布。在实现onDraw()方法时,经常会调用到save()和restore()方法。save()方法用来保存Canvas的状态,保存之后,可以调用Canvas中的位移、缩放、旋转和裁剪等操作;restore()方法可以恢复Canvas之前保存的状态,防止save()后对Canvas的操作会对后续绘制有所影响。save()和restore()要同时使用,如果restore()的调用次数比save()多,会发生错误图形图像处理及动画设计 图像处理图像处理Paint类拥有样式与颜色信息,主要是有关于如何绘制几何图形、文字及位图的方

4、法。voidsetARGB(inta,intr,intg,intb)设置Paint对象颜色,参数一为alpha透明通道。voidsetFakeBoldText(booleanfakeBoldText)是否设置伪粗体文本 voidsetLinearText(booleanlinearText)设置线性文本 voidsetTextSize(floattextSize)设置字体大小图形图像处理及动画设计 Paint(画笔)(画笔)Bitmap可以获取图像文件信息,进行图像剪切、旋转、缩放等操作,并可以指定格式保存图像文件。可以使用下面的几种方法获取位图:通过BitmapFactory的各种静态方法根

5、据资源文件创建:根据图片创建:图形图像处理及动画设计 Bitmap(位图)(位图)Bitmapbmp=BitmapFactory.decodeResource(this.getResources(),R.drawable.bmsrc);Bitmapbmp=BitmapFactory.decodeFile(/sdcard/dcoim/pets.jpeg)通过Drawable对象,步骤如下:使用BitmapDrawable(InputStreamis)构造一个BitmapDrawable;使用BitmapDrawable类的getBitmap()获取得到位图;BitmapDrawable也提供了显

6、示位图等操作。通过资源(Resources)需要先得到Resources对象,然后调用openRawResource()方法获取输入流,并将该流传给一个BitmapDrawable对象,然后调用Bitmap对象的getBitmap()方法得到位图图形图像处理及动画设计 Bitmap(位图)(位图)要获取位图信息,比如位图大小、是否包含透明度、颜色格式等,获取得到Bitmap 在Bitmap中对RGB颜色格式使用Bitmap.Config定义,仅包括ALPHA_8、ARGB_4444、ARGB_8888和RGB_565四种。Bitmap还提供了compress()接口来压缩图片,不过Androi

7、dSAK只支持PNG、JPG格式的压缩。图形图像处理及动画设计 获取位图信息获取位图信息显示位图需要使用核心类Canvas,可以直接通过Canvas类的drawBirmap()显示位图,或者借助于BitmapDrawable来将Bitmap绘制到Canvas。Android提供了两种位图缩放的方法:drawBitmap(Bitmapbitmap,Rectsrc,Rectdst,Paintpaint)将一个位图按照需求重画一遍,画后的位图就是我们需要的了,与位图的显示几乎一样。createBitmap(Bitmapsource,intx,inty,intwidth,intheight,Matri

8、xm,booleanfilter)在原有位图的基础上,缩放原位图,创建一个新的位图。图形图像处理及动画设计 缩放和旋转位图缩放和旋转位图通过Matrix,可以控制Android绘图坐标的位移、旋转、缩放等功能。Matrix的操作,总共分为translate(平移),rotate(旋转),scale(缩放)和skew(倾斜)四种,每一种变换在Android的API里都提供了set、post和pre三种操作方式,除了translate,其他三种操作都可以指定中心点。图形图像处理及动画设计 Matrix(矩阵)(矩阵)Android动画WWW.TEDU.CNViewAnimator的作用是为Fram

9、eLayout里面的View切换提供动画效果。ViewAnimator类有几个和动画相关的方法:setInAnimation(AnimationinAnimation):设定View进入屏幕时候使用的动画。setOutAnimation(AnimationoutAnimation):设定View退出屏幕时候使用的动画。一般使用AnimationUtils.loadAnimation(getApplicationContext(),android.R.anim.slide_in_left)来获得对应的动画效果。showNext():调用此方法显示Layout里面的下一个View。showPrev

10、ious():调用此方法显示Layout里面的上一个View。图形图像处理及动画设计 Android动画开发入门动画开发入门补间动画作用于View对象,主要包括对View对象的位置、尺寸、旋转角度和透明的变换。补间动画涉及的类包括Animation的几个子类如:AlphaAnimation TranslateAnimation ScaleAnimation RotateAnimation图形图像处理及动画设计 补间动画补间动画TweenAnimation逐帧动画主要用到的类是AnimationDrawable,通过它的addFrame(Drawableframe,intduration)方法,

11、将Drawable对象放到这个AnimationDrawable中,并设定跳转时间,然后将AnimationDrawable对象设置成ImageView的背景(使用ImageView的setBackgroundDrawable()方法),最后,调用start()方法启动它,注意不能在onCreate()方法中调用它。如果想让其循环播放,可以调用setOneShot(false)图形图像处理及动画设计 逐帧动画逐帧动画FrameAnimation可以使用程序控制补间动画的绘制,也可以使用配置文件来做设置,它主要有下面这些设置:XML标记和属性 透明度 尺寸变化 位置变换 旋转图形图像处理及动画设计 补间动画补间动画TweenAnimationThanks!关注达内科技官方微信 获取最新资讯WWW.TEDU.CN

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(电子课件-第八章图形图像处理及动画设计.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|