Android移动开发基础教程-第8章-高级编程课件

PPT
  • 阅读 91 次
  • 下载 0 次
  • 页数 22 页
  • 大小 194.936 KB
  • 2022-11-12 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档8.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
Android移动开发基础教程-第8章-高级编程课件
可在后台配置第一页与第二页中间广告代码
Android移动开发基础教程-第8章-高级编程课件
可在后台配置第二页与第三页中间广告代码
Android移动开发基础教程-第8章-高级编程课件
可在后台配置第三页与第四页中间广告代码
Android移动开发基础教程-第8章-高级编程课件
Android移动开发基础教程-第8章-高级编程课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 22
  • 收藏
  • 违规举报
  • © 版权认领
下载文档8.00 元 加入VIP免费下载
文本内容

【文档说明】Android移动开发基础教程-第8章-高级编程课件.pptx,共(22)页,194.936 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-2160.html

以下为本文档部分文字说明:

Android开发基础知识入门第8章高级编程8.1网络编程8.2图形图像和动画8.3多媒体应用开发8.4线程开发Android开发基础知识入门第8章高级编程8.5Fragment8.6RecyclerViewAndroid开发

基础知识入门➢TCP/UDP协议基础(1)两台设备之间进行通信,一定要有通信协议,即客户端以一定的格式将数据发送出去,服务端接收到数据之后,可以根据同样的协议将数据的内容解析出来。在现有的网络中,通信方式有两种:TCP和UDP;(2)TCP是传输控制协议,提供的是面向

连接、可靠的字节流服务,通信双方必须先建立一个TCP连接,然后才能传输数据。而且TCP协议还提供了超时重发、数据校验、拥塞控制等功能,保证了数据的可靠传输;(3)UDP是用户数据报协议,只是简单的把数据报发送出去,但是并不能保证数据能到达目的地,不提供可靠性;8.1网络

编程第8章高级编程Android开发基础知识入门➢处理流程客户端处理流程:1、根据服务器的IP地址和端口号建立网络连接。2、建立连接之后,进行数据交换。向服务端发送请求和接收服务端反馈的数据。3、关闭连接。

服务端处理流程:1、服务端启动之后,监听一个固定的端口,被动的等待客户端连接。2、客户端连接到服务端之后,服务端可以获取客户端的IP地址等信息,可以进行数据交换。3、接收客户端发送的数据,然后把处理的结果反馈给客

户端。4、关闭连接。8.1网络编程第8章高级编程Android开发基础知识入门➢下载网络资源在Android开发中,经常需要请求网络资源,例如播放在线音乐,或者加载显示一张网络图片。JAVA提供了HttpURLConnect

ion和HttpsURLConnection,两者都可以基于URL实现简单的请求响应功能,区别在于是访问http链接还是访问https链接。8.1网络编程第8章高级编程Android开发基础知识入门➢Bitma

p和BitmapFactoryAndroid中提供了Bitmap类用于图片处理,一个Bitmap对象代表一张位图,存储了图片的宽高、颜色、像素点等信息,Bitmap类提供了大量的方法。BitmapFactory主

要用于加载Bitmap对象,可以从资源文件加载,也可以根据图片的路径进行加载,还可以根据输入流进行解析Bitmap对象。8.2图形图像和动画第8章高级编程Android开发基础知识入门➢android绘图基础除了显示已有的图片之外,Android还支持一些简单的二维绘图,

其实对于Android的一些基本组件如TextView、Button等,也都是系统绘制出来的,绘制的操作在View类的onDraw(Canvascanvas)方法中,每个组件需要实现onDraw(Canvascanvas)方法进行自定义的绘制。8.2图形图像和动画第8章高级编程Android开

发基础知识入门drawBitmap(Bitmapbitmap,floatleft,floattop,Paintpaint)从Bitmap对象的左上角开始绘制drawCircle(floatcx,floatcy,

floatradius,Paintpaint)绘制一个圆drawLine(floatstartX,floatstartY,floatstopX,floatstopY,Paintpaint)绘制一条线drawPoint(floatx,flo

aty,Paintpaint)绘制一个点drawRect(floatleft,floattop,floatright,floatbottom,Paintpaint)绘制一个矩形drawText(Stringtext,floatx,floaty,Paintpaint)绘制一个字符串➢

补间动画在Android应用中,经常会出现一些动画效果,例如控件的滑入滑出,图片的渐隐等。常见的实现方式有补间动画和属性动画,补间动画是指开发者指定好控件的初始状态和结束状态,系统自动补齐显示控件的中间状态。Andr

oid补间动画支持的效果比较简单,包括平移、缩放、旋转、透明度变化四种。8.2图形图像和动画第8章高级编程Android开发基础知识入门类对应的动画TranslateAnimation用于做平移动画的类,需要指定控件的起始和结束时的位置。ScaleAnimation用于做

缩放动画的类,需要指定动画的缩放中心、起始时的缩放比和结束时的缩放比。RotateAnimation用于做旋转动画的类,需要指定旋转中心的坐标、起始的旋转角度和结束时的旋转角度。AlphaAnimation用于做透明度变化的类,需要指定起始的透明度和结束时的透明度。➢属性动画属性

动画是在API11之后加入的功能,它几乎可以作用在任何对象上。而且不同于补间动画只能支持四种变换,属性动画是在一定时间内将对象的属性从一个初始值改变到另一个值,因此,只要是对象存在的属性,无论是可见还是不可见的,都可以实

现动画效果。属性动画可以通过ObjectAnimator实现。8.2图形图像和动画第8章高级编程Android开发基础知识入门➢MediaPlayer类在Android应用中,经常会需要播放媒体资源,如音乐播放器、视频播放器和游戏的背景音乐等。Android提供了MediaPlayer

类,可以很简单地实现播放本地存储或者网络上的音视频文件。8.3多媒体应用开发第8章高级编程Android开发基础知识入门方法名方法说明intgetCurrentPosition()获取当前播放的位置intgetDuration()获取音视频文件的总长intget

VideoHeight()获取视频的高度intgetVideoWidth()获取视频的宽度booleanisPlaying()判断当前是否正在播放voidpause()暂停播放voidprepare()Medi

aPlayer开始准备(同步方法)voidprepareAsync()MediaPlayer开始准备(异步方法)voidrelease()释放MediaPlayer占用的资源voidreset()重置MediaPlayer的状态voidseekTo(intmsec)定位到音视频的指

定位置,可用于实现快进快退voidsetDataSource(Stringpath)设置视频源setDataSource(Contextcontext,Uriuri)设置视频源setDisplay(SurfaceHoldersh)用于显示播放画面setOnCompl

etionListener(MediaPlayer.OnCompletionListenerlistener)设置视频播放完成之后的监听事件setOnErrorListener(MediaPlayer.OnErrorListene

rlistener)设置播放出现错误时的监听事件setOnPreparedListener(MediaPlayer.OnPreparedListenerlistener)设置MediaPlayer准备

好时的监听事件setOnSeekCompleteListener(MediaPlayer.OnSeekCompleteListenerlistener)设置定位完成时的监听事件voidstart()开始播放voidstop()停止播放➢

MediaPlayer+SurfaceView播放视频播放的视频必须显示在View上,而且视频的画面一直在改变,所以View需要一直重绘。对于这种需要不断更新View内容的场景,Android提供了SurfaceView类,SurfaceView

关联了一个SurfaceHolder对象,专门用于绘制SurfaceView的内容。8.3多媒体应用开发第8章高级编程Android开发基础知识入门➢线程的引入线程在程序开发中是一个很重要的概念,在Android中,线程分为主线程和子线程。主线程又叫做UI线程,主要处理和界面有关的事

情,用于界面的绘制和交互。对于用户来说,随时都有可能操作页面,而且对响应速度要求较高,因此,主线程中不能做太耗时的操作,否则给用户视觉上会造成卡顿的现象,甚至有可能会因为执行阻塞产生ANR(ApplicationNotResponding)而导致应用

异退。8.4线程开发第8章高级编程Android开发基础知识入门➢AsyncTask使用AsyncTask是一个执行异步操作的类,它在主线程中创建和触发,但是在子线程中执行后台任务,然后将执行的进度和最终结果传递给主线程并在主线程中更新UI。例如有一种很常见的操作,应用

中如果需要在ImageView控件中显示一张网络图片,首先需要从网络上下载图片,然后再显示到控件上。8.4线程开发第8章高级编程Android开发基础知识入门方法名方法说明doInBackground()在后台执行任务onProgressUpdate()回调当前执行

的进度onPostExecute()任务执行完成➢ThreadPoolExecutor工作步骤构造方法:ThreadPoolExecutor(intcorePoolSize,intmaximumPool

Size,longkeepAliveTime,TimeUnitunit,BlockingQueue<Runnable>workQueue,ThreadFactorythreadFactory)(1)当调用了ThreadPoolEx

ecutor的excute()方法要求执行一个任务时,线程池会判断当前的线程个数是否超过核心线程数,如果没有超过,则启动一个核心线程来执行任务。(2)如果当前的线程个数超过了核心线程的个数,则将任务放到线程队列中排队等候。(3)如果线程队列已满,则启动一个非核心线程来

执行任务。(4)如果线程的总个数已经达到了线程池最大的线程个数,则拒绝接收任务。(5)如果线程池有线程处于空闲状态,则在指定keepAliveTime后回收线程,当线程个数等于核心线程数后,停止回收线程。8.4线程开发第8章高级编程Android开发基础知识入门➢Fragmen

t简介为了更加动态和灵活的支持UI设计,Android在API11版本之后引入了Fragment,它可以将UI碎片化,也可以被复用。Fragment必须显示在Activity中,可以动态的添加、移除、替换,但是每个Fragment也都具有自己的生命周期方法,并

且可以各自处理用户的输入事件。8.5Fragment第8章高级编程Android开发基础知识入门➢Fragment的创建和Activity类似,创建自定义的Fragment需要继承自Fragment类,并实现父类的相关回调方法,其中比较常见的是onCreate()、onCreateVi

ew()、onPause()方法。另外,Android通过FragmentManager类管理在Activity中的Fragment,具体的操作在FragmentTransaction中。首先可以通过getFragmentManager()方

法获取FragmentManager对象,然后调用FragmentManager的benginTransatcion()开启一个事务执行具体的操作。8.5Fragment第8章高级编程Android开发基础知识入门

➢Fragment的生命周期8.5Fragment第8章高级编程Android开发基础知识入门➢RecyclerView简介(1)RecyclerView用于显示大量的数据。(2)ReccyclerView可以动态的实现列表

或网格布局,类似于ListView或GridView。(3)每个Item都可以显示不同的布局文件。(4)RecyclerView内部实现了View的复用,在用户上下滑动列表或网格时,RecyclerView并不会为每一个子项创建一个View,而是创建若干个Vie

w不断复用,更新其中显示的数据。8.6RecyclerView第8章高级编程Android开发基础知识入门➢RecyclerView相关类(1)在RecyclerView视图中,每个子项都被表示为ViewHol

der对象,开发者必须继承RecyclerView.ViewHolder类实现自定义的ViewHolder类。每个ViewHolder都可以有一个布局文件用于显示一个子项。(2)RecyclerView通过Adapte

r管理ViewHolder,开发者必须继承RecyclerView.Adapter类实现自定义的Adapter。(3)RecyclerView使用LayoutManager对其中的数据进行排列,开发者可以使用系统提供的LayoutManager,也可以自定义LayoutManager类实现

自己想要的排列方式。系统提供的LayoutManager有三种:分别是LinearLayoutManager、GridLayoutMananger和StaggeredGridLayoutManager。8.6RecyclerVi

ew第8章高级编程Android开发基础知识入门➢网络编程➢图形图像和动画➢多媒体应用开发➢线程开发➢Fragment的使用➢RecyclerView的使用总结第8章高级编程Android开发基础知识入门

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?