Android移动开发基础案例教程-课件10.pptx

上传人(卖家):ziliao2023 文档编号:6100419 上传时间:2023-05-29 格式:PPTX 页数:58 大小:1.55MB
下载 相关 举报
Android移动开发基础案例教程-课件10.pptx_第1页
第1页 / 共58页
Android移动开发基础案例教程-课件10.pptx_第2页
第2页 / 共58页
Android移动开发基础案例教程-课件10.pptx_第3页
第3页 / 共58页
Android移动开发基础案例教程-课件10.pptx_第4页
第4页 / 共58页
Android移动开发基础案例教程-课件10.pptx_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、Android移动开发基础案例教程第10章 高级编程 Fragment Android5.0新特性 图形图像处理 动画、多媒体作业点评 GET方式提交数据和POST方式提交数据的区别。Handler消息机制中四个关键对象的作用。Android中的补间动画与逐帧动画的区别 Fragment的生命周期预习检查10.4 Fragment 10.1 图形图像处理 10.2 动画10.3 多媒体主讲内容图形图像处理常用类l Bitmap是可以获取图像文件信息,进行图像剪切、旋转、缩放等操作,并可以指定格式保存图像文件。l BitmapFactory是位图工厂,它是一个工具类。l Paint代表画笔,用来

2、描述图形的颜色及风格。l Canvas代表画布,通过该类提供的方法,可以绘制各种图形。l Matrix为图片添加特效的效果。图形图像处理方法名称方法名称功能描述功能描述createBitmap(int width,int height,Config config)创建位图,width代表要创建的图片的宽度,height代表高度,config代表图片的配置信息createBitmap(int colors,int offset,int stride,int width,int height,Config config)使用颜色数组创建一个指定宽高的位图,颜色数组的个数为width*heightc

3、reateBitmap(Bitmap src)使用源位图创建一个新的BitmapcreateBitmap(Bitmap source,int x,int y,int width,int height)从源位图的指定坐标开始“挖取”指定宽高的一块图像来创建新的Bitmap对象createBitmap(Bitmap source,int x,int y,int width,int height,Matrix m,boolean filter)从源位图的指定坐标开始“挖取”指定宽高的一块图像来创建新的Bitmap对象,并按照Matrix规则进行变换isRecycled()判断Bitmap对象是否被回

4、收recycle()回收Bitmap对象Bitmap常用方法常用方法10.1.1 Bitmap类创建Bitmap实例 Bitmap.Config config =Config.ARGB_4444;Bitmap bitmap=Bitmap.createBitmap(width,height,config);10.1.1 Bitmap类方法名称方法名称功能描述功能描述decodeFile(String pathName)从指定文件中解析、创建Bitmap对象decodeStream(InputStream is)从指定输入流中解析、创建Bitmap对象decodeResource(Resource

5、s res,int id)根据给定的资源id,从指定资源中解析、创建Bitmap对象BitmapFactory常用方法常用方法 Bitmap bitmap=BitmapFactory.decodeFile(/sdcard/meinv.jpg);Bitmap bitmap=BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);10.1.2 BitmapFactory类方法名称方法名称功能描述功能描述Paint()创建一个Paint对象,并使用默认属性Paint(int flags)创建一个Paint对象,并使用指定

6、属性setColor(int color)设置颜色setAlpha(int a)设置透明度setTextSize(float textSize)设置绘制文本时的文字大小setShadowLayer(float radius,float dx,float dy,int color)设置阴影,参数radius为阴影的角度;dx和dy为阴影在x轴和y轴上的距离;color为阴影的颜色Paint常用方法常用方法 Paint paint=new Paint();paint.setColor(Color.RED);10.1.3 Paint类方法名称方法名称功能描述功能描述drawRect(Rect r,P

7、aint paint)使用画笔画出指定矩形drawOval(RectF oval,Paint paint)使用画笔画出指定椭圆drawCircle(float cx,float cy,float radius,Paint paint)使用画笔在指定位置画出指定半径的圆drawLine(float startX,float startY,float stopX,float stopY,Paint paint)使用画笔在指定位置画线setTextSize(float textSize)设置绘制文本时的文字大小drawRoundRect(RectF rect,float rx,float ry,Pa

8、int paint)使用画笔绘制指定圆角矩形,其中rx表示X轴圆角半径,ry表示Y轴圆角半径Canvas常用方法常用方法10.1.4 Canvas类 protected void onDraw(Canvas canvas)super.onDraw(canvas);Paint paint =new Paint();paint.setColor(Color.RED);Rect r=new Rect(40,40,200,100);canvas.drawRect(r,paint);10.1.4 Canvas类方法名称方法名称功能描述功能描述Matrix()创建一个唯一的Matrix对象setRotat

9、e(float degrees)将Matrix对象围绕(0,0)旋转degrees度setRotate(float degrees,float px,float py)将Matrix对象围绕指定位置(px,py)旋转degrees度setScale(float sx,float sy)对Matrix对象进行缩放,参数sx代表X轴上的缩放比例,sy代表Y轴上的缩放比例setSkew(float kx,float ky)让Matirx对象倾斜,在X轴上倾斜kx,在Y轴上倾斜kysetTranslate(float dx,float dy)平移Matrix对象,(dx,dy)为Matrix平移后的坐

10、标Matrix常用方法常用方法 Matrix matrix=new Matrix();matrix.setRotate(30);10.1.5 Matrix类123功能描述:技术要点:用户交互界面的设计与实现 XML文件(activity_main.xml)的编写 实体类(MainActivity.java)的编写 界面逻辑代码的设计与实现案例代码(详见教材案例代码(详见教材PxPxx)实现步骤:触摸手机屏幕,使图片变透明利用Android提供的类处理图片10.1.6 实战演练刮刮卡10.4 Fragment 10.1 图形图像处理 10.2 动画10.3 多媒体主讲内容Android中的动画补

11、间动画通过对View中内容进行一系列的图形变换来实现动画效果,其中图形变化包括平移、缩放、旋转、改变透明度等。按照事先准备好的静态图像顺序播放的,利用人眼的“视觉暂留”原理,给用户造成动画的错觉。逐帧动画 在Android开发中,避免不了用到动画,Android中的动画分为补间动画和逐帧动画两种。主讲内容补间动画 在Android中,提供了四种补间动画:透明度渐变动画(AlphaAnimation)旋转动画(RotateAnimation)缩放动画(ScaleAnimation)平移动画(TranslateAnimation)10.2.1 补间动画(Tween Animation)透明度渐变动

12、画 透明度渐变动画是通过改变View组件透明度来实现的渐变效果。它主要通过为动画指定开始时的透明度、结束时的透明度以及动画持续时间来创建动画。10.2.1 补间动画(Tween Animation)透明度渐变动画文件(.xml)旋转动画 旋转动画是通过为动画指定开始时的旋转角度、结束时的旋转角度以及动画播放时长来创建动画的。10.2.1 补间动画(Tween Animation)旋转动画文件(.xml)缩放动画 缩放动画是通过为动画指定开始时的缩放系数、结束时的缩放系数以及动画持续时长来创建动画的。10.2.1 补间动画(Tween Animation)缩放动画文件(.xml)平移动画 平移动

13、画就通过为动画指定开始位置、结束位置以及动画持续时长来创建动画的。10.2.1 补间动画(Tween Animation)平移动画文件(.xml)123功能描述:技术要点:用户交互界面的设计与实现 创建四种动画文件 界面逻辑代码的设计与实现案例代码(详见教材案例代码(详见教材PxPxx)实现步骤:创建四种补间动画编写四种动画文件10.2.1 补间动画(Tween Animation)逐帧动画 逐帧动画是按照准备好的静态图像顺序播放的,利用人眼的“视觉暂留”原理,造成动画的错觉。逐帧动画的原理与放胶片看电影的原理是一样的,它们都是一张一张地播放事先准备好的静态图像。10.2.2 逐帧动画(Fra

14、me Animation)123功能描述:技术要点:用户交互界面的设计与实现 引入图片资源 创建Frame动画文件 编写界面逻辑代码案例代码(详见教材案例代码(详见教材PxPxx)实现步骤:播放逐帧动画掌握实现逐帧动画步骤10.2.2 逐帧动画(Frame Animation)10.4 Fragment 10.1 图形图像处理 10.2 动画10.3 多媒体主讲内容方法名称方法名称功能描述功能描述setDataSource()设置要播放的音频文件的位置prepare()在开始播放之前调用这个方法完成准备工作start()开始或继续播放音频pause()暂停播放音频reset()将MediaPl

15、ayer对象重置到刚刚创建的状态seekTo()从指定位置开始播放音频stop()停止播放音频,调用该方法后MediaPlayer对象无法在播放音频release()释放掉与MediaPlayer对象相关的资源isPlaying()判断当前MediaPlayer是否正在播放音频getDuration获取载入的音频文件的时长 MediaPlayer是用于播放音频和视频的,它支持多种格式音频文件(3gp、mp4),并提供了非常全面的控制方法。10.3.1 MediaPlayer播放音频 MediaPlayer mediaPlayer=new MediaPlayer();mediaPlayer.se

16、tAudioStreamType(AudioManager.STREAM_MUSIC);MediaPlayer接收音频类型有很多,其中有四种较为常用的类型:l AudioManager.STREAM_MUSIC(音乐)l AudioManager.STREAM_RING(响铃)l AudioManager.STREAM_ALARM(闹钟)l AudioManager.STREAM_NOTIFICTION(提示音)音频类型不同占据的内存空间也不同,音频时间越短占的内存越小创建MediaPlayer10.3.1 MediaPlayer播放音频设置数据源 设置数据源有三种方式,分别是播放应用自带的音

17、频文件、播放SD卡中的音频文件、播放网络音频文件。mediaPlayer.create(this,R.raw.xxx);mediaPlayer.setDataSource(mnt/sdcard/xxx.mp3);mediaPlayer.setDataSource(http:/www.xxx.mp3);10.3.1 MediaPlayer播放音频播放本地音频文件 mediaPlayer.prepare();mediaPlayer.start();10.3.1 MediaPlayer播放音频 mediaPlayer.prepareAsync();mediaPlayer.setOnPreparedL

18、istener(new OnPreparedListener)public void onPrepared(MediaPlayer player)mediaPlayer.start();播放网络音频文件10.3.1 MediaPlayer播放音频 if(mediaPlayer!=null&mediaPlayer.isPlaying()mediaPlayer.pause();暂停播放10.3.1 MediaPlayer播放音频 播放状态下进行重播重新播放 暂停状态下进行重播 if(mediaPlayer!=null&mediaPlayer.isPlaying()mediaPlayer.seekT

19、o(0);return;if(mediaPlayer!=null)mediaPlayer.seekTo(0);mediaPlayer.start();10.3.1 MediaPlayer播放音频停止播放 if(mediaPlayer!=null&mediaPlayer.isPlaying()mediaPlayer.stop();mediaPlayer.release();mediaPlayer=null;10.3.1 MediaPlayer播放音频VideoView方法名称方法名称功能描述功能描述setVideoPath()设置要播放的视频文件的位置start()开始或继续播放音频pause(

20、)暂停播放音频resume()将视频重新开始播放seekTo()从指定位置开始播放视频isPlaying()判断当前是否正在播放视频getDuration()获取载入的视频文件的时长 VideoView组件播放视频最简单,它将视频的显示和控制集于一身,因此,借助它就可以完成一个简易的视频播放器。10.3.2 VideoView播放视频使用VideoView 创建VideoView 视频的播放 VideoView videoView=(VideoView)findViewById(R.id.videoview);videoView.setVideoPath(mnt/sdcard/apple.av

21、i);videoView.setVideoURI(Uri.parse(http:/www.xxx.avi);videoView.start();10.3.2 VideoView播放视频添加控制器 控制器MediaController是一个包含媒体播放器(MediaPlayer)控件的视图,包含了一些典型的按钮如:播放/暂停(Play/Pause)、倒带(Rewind)、快进(Fast Forward)与进度滑动器(progress slider)。它管理媒体播放器(MediaController)的状态以保持控件的同步。MediaController controller=new MediaC

22、ontroller(context);videoView.setMediaController(controller);10.3.2 VideoView播放视频123功能描述:技术要点:用户交互界面的设计与实现 界面逻辑代码的设计与实现案例代码(详见教材案例代码(详见教材PxPxx)实现步骤:播放SD卡中的视频文件通过VideoView实现播放视频10.3.3 实战演练视频播放器10.4 Fragment 10.1 图形图像处理 10.2 动画10.3 多媒体主讲内容Fragment简介 Fragment(碎片)是一种可以嵌入在Activity中的UI片段,与Activity非常相似,不仅包含

23、布局,同时也具有自己的生命周期。10.4.1 Fragment简介生命周期 Fragment不能独立存在必须嵌入到Activity中使用,所以Fragment生命周期直接受所在的Activity影响。当Activity暂停时,它拥有的所有Fragment都暂停,当Activity销毁时,它拥有的所有Fragment都被销毁。10.4.2 Fragment的生命周期Activity StateCreatedStartedFragment CallbacksonAttach()onCreate()onCreateView()onActivityCreated()onStart()onResume(

24、)ResumedPausedonPaused()StoppedonStop()DestroyedonDestriyView()onDesttroy()onDetach()10.4.2 Fragment的生命周期10.4.3 Fragment的创建 public class MyFragment extends Fragment public MyFragment()/Required empty public constructor Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bun

25、dle savedInstanceState)/Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_my,container,false);10.4.3 Fragment的创建Fragment的使用 在Activity中使用Fragment时,可以通过两种方式将Fragment添加到Activity中,一种是通过布局文件添加,一种是通过代码动态添加。通过布局文件添加Fragment 10.4.3 Fragment的创建Fragment的使用 通过代码动态添加Fragment MyFragm

26、ent fragment=new MyFragment();FragmentManager fm=getFragmentManager();FragmentTransaction beginTransaction=fm.beginTransaction();beginTransaction.add(R.id.rl,fragment);beginTmit();10.4.3 Fragment的创建123功能描述:技术要点:用户交互界面的设计与实现 创建三个Fragment 界面逻辑代码的设计与实现案例代码(详见教材案例代码(详见教材PxPxx)实现步骤:实现三个界面进行滑动切换创建Fragment

27、实现滑动效果10.4.4 实战演练滑动切换界面10.5 Android5.0新特性主讲内容抽屉动画 Android5.0中新增抽屉动画(DrawerLayout),通过抽屉动画可以实现侧滑效果。.10.5.1 抽屉动画抽屉动画 DrawerLayout控件只需在布局文件中引入,不需要编写用户交互代码便可实现侧滑效果。10.5.1 抽屉动画RecyclerView控件 Android5.0之后,谷歌公司提供了一个用于在有限的窗口范围内显示大量数据的RecyclerView控件。RecyclerView本身不参与任何视图相关的问题,它只负责回收和重用的工作。10.5.2 RecyclerView控

28、件SwipeRefreshLayout控件 下拉刷新是一个使用非常广泛的功能,在Android5.0之后,谷歌公司推出了一个全新的控件SwipeRefreshLayout用于实现下拉刷新,使在开发过程中更加方便简洁。10.5.3 SwipeRefreshLayout控件 10.5.3 SwipeRefreshLayout控件 本章详细讲解了图形图像处理、动画、多媒体以及Fragment等知识点。这些知识属于Android中的高级部分,因此要求初学者在学习本章之前,必须先熟练掌握前面讲解的知识,打好Android基础。10.6 本章小结 本章作业 请简要说明Android中有几种动画,以及每种动画的特点。请简要说明Fragment生命周期包含哪些方法。

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

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

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


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

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


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