第4章2D图形绘制与多媒体android_第1页
第4章2D图形绘制与多媒体android_第2页
第4章2D图形绘制与多媒体android_第3页
第4章2D图形绘制与多媒体android_第4页
第4章2D图形绘制与多媒体android_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第4章章 2D图形绘制与多媒体图形绘制与多媒体本章学习目标本章学习目标n重点:基本的图形绘制函数2D图形绘制框架View类下的回调函数n难点:2D图形绘制框架n随着手机功能的强大,越来越多的应用程序中加入了图形的绘制。在应用程序中添加图形将会使得应用程序更加生动和直观。4.1 Android图形基础nCanvas类相当于绘画中的画布一样。几乎所有的绘制代码,都要通过Canvas类实现 。nColor类表示颜色。在Android中用4个数字表示颜色ARGB(Alpha、Red、Green、Blue)分别表示透明度、红色、绿色和蓝色。 nPaint类相当于绘画的画笔一样。可以根据需要设定画笔的颜

2、色和粗细等属性。 4.1 Android图形基础ndrawLine,绘制直线 n函数原型:public void drawLine(float startX,float startY,float stopX,float stopY,Paint paint) 4.1 Android图形基础图形基础4.1 Android图形基础图形基础 ndrawRect,绘制矩形n函数原型:npublic void drawRect(float left,float top,float right,float bottom,Paint paint) 。4.1 Android图形基础图形基础4.1 Android

3、图形基础图形基础 nonDraw,当窗口需要刷新时,系统自动调用此函数进行窗口重新绘制,所有的绘制代码都需要写在onDraw函数里面。 nonSizeChanged,当窗口新建或者窗口大小发生改变,系统自动调用此函数获取窗口大小。 nonKeyDown,当用户按下键盘时,系统会自动调用此函数。 4.1 Android图形基础图形基础public class pView extends Viewpublic pView(Context context) super(context);setFocusable(true);Overrideprotected void onSizeChanged(i

4、nt w,int h,int oldw,int oldh)Overrideprotected void onDraw(Canvas canvas) public boolean onKeyDown(int KeyCode,KeyEvent event) 绘制二维图形n绘制一个圆和一个矩形。 4.2 动画实现动画实现 n调用postInvalidate() 或Invalidate() 。系统将重新绘制整个屏幕区域的图形。修改物体坐标修改物体坐标刷新窗口,重新绘制刷新窗口,重新绘制4.2 动画实现动画实现 n创建定时器Timer mTimer = new Timer(); n创建一个定时器任务 T

5、imerTask mTimerTask; mTimerTask = new TimerTask()Overridepublic void run() /把需要定期执行的代码放到run函数里面;n设定时间mTimer.schedule(mTimerTask,1,20); 4.2 动画实现动画实现n用键盘控制移动获取用户按键获取用户按键根据按键修改坐标根据按键修改坐标判断按键判断按键刷新窗口,重新绘制刷新窗口,重新绘制4.2 动画实现动画实现n编码实现动画,其中圆形可以自行移动,矩形可以由键盘控制移动 4.3 音乐播放nAndroid理论上支持大部分的音频格式,比如WAV、AAC、MP3、AMR、

6、MIDI、OGG等。实际上只有OGG、MP3和WAV格式的音频可以在模拟器上面正常的播放。 4.3给游戏加上背景音乐给游戏加上背景音乐n创建媒体播放器import android.media.MediaPlayer; public class pingpang extends Activity private static MediaPlayer mp = null; 4.3给游戏加上背景音乐给游戏加上背景音乐n添加播放函数public class pingpang extends Activity public static void play(Context context,int res

7、ource)mp = MediaPlayer.create(context,resource); mp.setLooping(true); /指定是否重复播放mp.start(); /开始播放4.3给游戏加上背景音乐给游戏加上背景音乐n调用play函数进行播放public void onCreate(Bundle savedInstanceState) pview = new pView(this); super.onCreate(savedInstanceState);setContentView(pview); pview.requestFocus(); play(this,R.raw.g

8、ame); 4.4 视频播放视频播放nAndroid SDK对视频支持的格式如下:nMP4(MPEG_4低比特率);nH263;nH264(AVC)n在Windows计算机上,唯一可靠工作的格式是MP4,建议尽量采用这种格式。 4.4 视频播放视频播放nAndroid的MediaPlayer类的视频处理与音频处理方式一样,唯一差别是需要为视频创建一个用于绘制图形的Surface。可以用start()和stop()方法控制视频的播放。n还有一种更简单的方法将视频嵌入到应用程序:VideoView类。 实训实训:视频播放器软件视频播放器软件 本章小结本章小结n本章主要介绍了Android平台下的二维图形编程的相关知识。图形编程在手机应用程序开发中有着重要的地位,几乎所有的应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论