Android应用开发基础-教案.docx

上传人:太** 文档编号:67074804 上传时间:2022-12-23 格式:DOCX 页数:68 大小:175.61KB
返回 下载 相关 举报
Android应用开发基础-教案.docx_第1页
第1页 / 共68页
Android应用开发基础-教案.docx_第2页
第2页 / 共68页
点击查看更多>>
资源描述

《Android应用开发基础-教案.docx》由会员分享,可在线阅读,更多相关《Android应用开发基础-教案.docx(68页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第1章移动应用开发概述教案学科Android应用开发基础课题第一章移动应用开发概述周次1时数4授课班级教学目的及要求:1、了解Android的发展历程,版本的发展情况,Android市场。2、熟练掌握Android的系统架构,主要掌握应用程序层,应用程序框架层, 系统运行库层以及Linux内核层。3、熟练掌握JDK的下载,安装以及环境变量的配置,熟练操作JDK的各项命 令行应用程序。4、熟练掌握Android开发环境的卜载,安装以及环境变量的配置,熟练操作 Android的开发环境。5、熟练掌握Android模拟器的配置方法,熟练应用Android模拟器调试程序。教学重点: Android的开

2、发环境 Android应用程序结构 Android应用程序调试教学难点: Android的开发环境 Android应用程序调试实验仪器及教具:PC 机、windows 操作系统、JDK、Android Studio户名admin;第二个Activity跳转回第一个Activity,并传回参数值sziit;第一个Activity 读取并显示参数值:课后作业: Activity应用.数据传递例子作业.体重计3第3章Android组件教案1学科Android应用开发基础课题第3章Android组件3.1布局和基础组件周次 3 时数 4授课班级18移动互联37 3-2教学目的及要求:1、掌握控件在布局

3、中的属性,主要包括长度,宽度,对齐,边缘等2、掌握绝对布局的方式以及应用场景3、掌握相对布局的方式以及应用场景4、掌握线性布局的方式以及应用场景5、掌握限制性布局;辅助线以及Chain布局的方式以及应用场景6、熟练掌握TexlView的布局属性和使用方法7、熟练掌握Button的事件响应机制和使用方法8、熟练掌握EditText的布局属性和使用方法9、熟练掌握ProgressBar的的布局属性和使用方法教学重点: 限制性布局。 Button的事件响应机制和使用方法 ProgressBar的的布局属性和使用方法教学难点: 限制性布局。 Button的事件响应机制和使用方法实验仪器及教具:PC 机

4、、windows 操作系统、JDK、Android Studio教 学 过 程备注第1课时(40分钟)(3.1 Activity 布局)View是Android所有组件的父类,是最基本的组件视图,所有的控件和布局都由View 继承;View基本属性和方法可以适用于所有布局和控件;下面是View的布局属性; 1android:id:视图组件的编号;2 android:layout_width:视图的宽度;match_parenl 代表与上级视图一样宽,wrap_content 代表与组件内容-样宽;3 android:layout_height:视图的高度;match_parent代表与上级视图

5、一样高,wrap_conteni代表与组件内容一样高:4android:layout_niargin:视图与周围视图的距离;layout_marginTop代表与上边视图距离; layou(_marginBottoin代表与下边视图距离:layoul_marginLeft代表与左边视图距离: layout_marginRight代表与右边视图距离5android :layout_: ini n Width:视图最小宽度6 android:layout_:niinHeight:视图最小高度7 android:background :视图的背景:可以是颜色;也可以是图片;8 android:lay

6、out_gravity:视图与上级视图的对齐方式:lefi代表靠左对齐,right代表靠右 对齐,top代表靠上对齐;bottom代表靠下对齐,center代表居中对齐;9 android:gravi(y:视图中文字与视图的对齐方式:left代表靠左对齐,right代表靠右对齐, top代表靠上对齐;bottom 代表靠下对齐,center代表居中对齐:10 android:visible:视图的可视属性;visible代表可见,invisible代表不可见,占据视图 布局位置:gone代表不可见,不占据视图布局位置11 android:padding:内部内容与视图的距离:paddingTo

7、p代表视图边缘与上边距离: paddingBottom代表视图边缘与下边距离;12 paddingLcft代表视图边缘与左边距离: paddingRight代表视图边缘与右边距离;13app:layout_constraint:布局限制;app:layout_constraintBottom_toBottomOf 限制视图与底 部对齐:app:layout_constraintTop_toTopOf 限制视图与顶部对齐: app:layout_constraintStart_toStartOf 限制视图与左边对齐; app:layoul_cons【rainiEndoEndOf限制视图与右边对齐

8、;View的布局属性可以在代码中使用下面的方法进行设置;1 seiLayouiParams设置视图的布局参数2 setMinimumWidth设置视图的最小宽度3 sctMinimumHcight设置视图的最小高度4 setBackgroundColor设置视图的背景颜色5 setBackgroundDrawablc设置视图的背景图片6 setBackgroundResource设置视图的背景资源7 setPadding设置视图边缘与视图内容之间的空白距离8 setvisibility设置视图的可视类型卜.面是一个九宫格的布局,布局使用绝对布局来实现;视图中的每个组件都是使用绝对 布局,其中所

9、有的组件高度和宽度都为绝对值,都是80dp ; 1组件1在空间中的位置也是绝对值,在x方向是20dp,在y方向是20dp; 2组件2在空间中的位置也是绝对值,在x方向是120dp,在y方向是2()dp; 3组件3在空间中的位置也是绝对值,在x方向是220dp,在y方向是20dp:绝对布局的优点是布局简单,一目了然,但是缺点是布局不能适应屏幕的大小; View是Android所有组件的父类,是最基本的组件视图,所有的控件和布局都由View 继承:View基本属性和方法可以适用于所有布局和控件:下而是View的布局属性; 1 android:id : 视 图 组 件 的 编 号; 2 androi

10、d:layout_width:视图的宽度:mach_parenl 代表与上级视图一样宽,wrap_conenl 代表与组件内容一样宽;android:layout_height:视图的高度;mateh_parcnt 代表与上级视图一样高,wrap_content 代表与组件内容一样高;3 android:layout_margin:视图与周围视图的距离:layout_marginTop代表与上边视图距离; lay()ut_marginB()tlom代表与下边视图距离;layout_marginLefl代表与左边视图距离: layout_marginRight代表与右边视图距离5android:

11、Iayoul_:minWidth : 视 图 最 小 宽 度 6 android:layout:minHeight:视图最小高度第2课时(40分钟)(3.1 Activity 布局实例)下面是一个九宫格的布局,布局使用绝对布局来实现:视图中的每个组件都是使用绝对 布局,其中所有的组件高度和宽度都为绝对值,都是80dp ; 1组件1在空间中的位置也是绝对值,在x方向是20dp,在y方向是20dp: 2组件2在空间中的位置也是绝对值,在x方向是120dp,在y方向是20dp; 3组件3在空间中的位置也是绝对值,在x方向是220dp,在y方向是20dp; 绝对布局的优点是布局简单,一目了然,但是缺点

12、是布局不能适应屏幕的大小:下面是一个九宫格的布局,布局使用相对布局来实现;视图中的每个组件都是使用相对 布局,其中所有的组件高度和宽度都为绝对值,都是80dp : I组件1, 2,3与顶部对齐并且与顶部距离为20dp;组件4,5,6在醉幕垂直方向上中间; 组件 7,8,9 与底部对齐并且与底部距离为 20dp ; 2组件1,4,7与左边对齐并且与左边距离为20dp:组件2,5,8在屏幕水平方向上中间;组 件3,6,9与右边对齐并且与右边距离为20dp;相对布局的优点是布局可以适应屏幕的位置;但是组件的大小是固定的,不能根据屏幕的大小动态改变:下面使用线性布局来实现九宫格;视图中的每个组件都是使

13、用线性布局来实现,其中所 有的组件高度和宽度都是根据屏幕的大小来变化的:线性你局使子视图像线串起来; 布局属性中 andioid:orientation= 44horizontal ;代表从左到右排列;android:orientation= “ vertical ”; 代 表 从 上至U下 排歹U:1组件1, 2,3组成线性子布局1;组件4, 5,6组成线性子布局2;组件7, 8,9组成线性 子布局3:他们在垂直方向上的高度权重都是2;几个线性子布局的间隔添加了空白View, 空 白 View 的 权 重 设 置 为 1 2线性子布局1中,组件123从左到右排列;组件在水平方向上的高度权重都

14、是2; 组件的间隔添加了空白View,空白View的权重设置为1:第3课时(40分钟) (3.2基础组件) 本节我们主要介绍Android的基础组件,主要包括下面组件: 1 Text View:文本组件,主要介绍TexlView布局属性和使用方法; 2 Button:按钮组件,主要介绍Button布局属性和使用方法;Edi (Text:文本输入框组件,主要介绍EdilText布局属性和使用方法;3 ProgressBar: 进度条组件,主要介绍ProgressBar布局属性和使用方法;TextView是最基本的文本视图;下面是TextView的基本属性利方法;1 androidlext : s

15、elText 设置文本内容2 android:textColor: setTextColor 设置文本颜色3 android:textSize: setTextSize 设置文本大小4 android:textAppearance: setTextAppeaiance 设置文本样式 res/styles.xml5 android:gravity: sctGravity设置文本的对齐方式6 android:singleLine: setSingleLine 设置文本的单行显示7 androidxllipsizc: sctEHipsize设置文本超出范围的省略方式8 android:focusab

16、le: setFocusable 设置是否获得焦点下面是使用TextView完成跑马灯的具体实例,TextView的布局属性设置如下:1 android:text=”天气信息”设置文本内容2 android:singleLine=true设置文本的单行显示3 android:ellipsize=marquce设置文本以跑马灯方式显示:4 android:focusable=,true,设置跑马灯获得焦点8 android:focusablcInTouchMode=truc设置触摸获得焦点Button是按钮视图,主要是监听用户的单击事件并进行处理: 基于监听的事件处理主要涉及以下三类对象:1 E

17、venlSource (事件源):事件所发生的场所,通常是各个组件,如按钮、窗口、菜单等。 2 Event (事件):通常是用户的某个操作,如单击、双击、长时间按下等。3 EvcntListcner (事件监听器):负责监听事件源所发生的事件,并对各种事件做出相应 的响应。Button主要通过下面的流程实现事件的监听:1事件源注册到事件监听器;2用户触发按钮事件:3事件源生成事件对象Event: 4触 发事件作为参数传入到事件监听器;5事件监听器对事件作出处理;Button的实现代码如下:1 Activity中实现按钮点击事件监听器(View.OnClickLislener), 长击事件监听器

18、(.0m01哈。厄1:口$111);2 Button变量初始化,将按钮单击事件注册 到Activity事件监听器,将按钮双击事件注册到Activity监听器3在Activitity中重写onClick方法实现按钮的单击事件处理;1根据视图的id判断哪个 按钮被点击2使用Toast将按钮的信息显示:4在Activitity中重写onLongClick方法实现按钮的长按事件处理:1根据视图的id判断 哪个按钮被长按2使用Toast将按钮的信息显示;第4课时(40分钟)(3.2基础组件)卜.面是EditText组件的应用实例,EditText是用于与用户交互的输入文本框组件;EditText布局属性

19、如下android: id=+id/editTextandroid:layout_width= wrap_contcnt/视图宽度android :layout_height= wrap_content/视图高度android:layout_marginTop= 32dp视图外边管k 距离android:background= drawable/bg_edittext/视图背景android:gravity= center /视图文字居中android:hint=请输入 内 容/视图提示内容android:inputType= textMultiLine / 输入内容:为多行, 可选andro

20、id:maxLincs= 2视图最大输入行数android:padding= 16dp ”视图文字离视图内边缘距离android:textSize= 2Odp 视 图 文 字 大 小app:layout_constraintEnd_toEndOf= parent ”视 图右边 界app:layout_constraintStart_toStartOf= parent ” 视 图 左 边 界 app:layout_constraintTop_toTopOf= u parent 视图上.边界EditText背景是个选择器,选择器保存在res/drawable/bg_edittext.xml文件中;

21、属 性如下:正常状态下使用drawable/bg_edittext_normal背景;获得焦点状态下使用drawable/bg_edittext_focused 背景; 正常状态下res/drawable/bg_edittext_normal.xml的布局文件如下:定义了stroke边 框的颜色;solid线条的填充色;框四周圆弧的半径comers android:radius=4dp / 获得焦点状态下res/drawable/bg_edittext_focus.xml的布局文件如下:获得焦点状态 下stroke边框的颜色做出了修改;solid线条的填充色不变;框四周圆弧的半径也 不变(co

22、mers android:radius=4dp / 下面介绍EditText控件的内容获取;使用mEditText.gelText()获取文本内容;使用toStringO 方法转换为字符串;使用trim。将字符串前后空格删除;使用Toast方法将EditText控件的 文本内容显示;ProgressBar是进度条组件,主要显示任务完成的进度:下面是一个ProgressBar的应用 实例,点击手动增加进度,进度条会每次增加10%:点击自动增加进度,进度条会依次 从10%增加到100%;ProgressBar进度条的布局文件如下:与左右的视图距离都是32dp;限制性属性中,顶部 与进度文本控件对齐

23、;与顶部的视图距离为16dp:手动增加进度条功能如下图所示:进度变量iProgress每次增加10%; mProgressBar通过 setProgress方法更改进度条的值;mTextView的selText方法设置进度文本控件的值 自动增加进度条功能如下图;1建立子线程,子线程中进度变量iProgress每次增加10%, 超过100%后重新归0: 2子线程中操作主线程UI:使用runOnUiThread在ui主线程空 闲的时候设置mProgressBar进度条和mTextView文本控件3 Thread.sleep延时200ms; 4 使用mThread.siarl。启动线程课后作业: A

24、ctivity组件应用计算器布局4第3章Android组件教案2学科Android应用开发基础课题课题第3章Android组件3.3中级组件和适配器周次 4 时数 4授课班级18移动互联37 3-2教学目的及要求:1、熟练掌握UI多线程的初始化和启动方法2、熟练掌握CheckBox的布局属性和使用方法3、熟练掌握Switch的事件响应机制和使用方法4、熟练掌握RadioButton的事件响应机制和使用方法5、熟练掌握ImageVicwr的的布局属性和使用方法教学重点: 熟练掌握Switch的事件响应机制和使用方法 熟练掌握RadioButton的事件响应机制和使用方法教学难点: 熟RadioB

25、utton的事件响应机制和使用方法实验仪器及教具:PC 机、windows 操作系统、JDKn Android Studio教 学 过 程第1课时(40分钟)(3.3中级组件1)本节我们主要介绍Android的中级组件,主要包括下面组件:1 CheckBox:复选框组件,主要介绍CheckBox的布局属性和使用方法;2 Switch:开关组件,主要介绍Switch的事件响应机制和使用方法;3 RadioButton:圆形单选框组件,主要介绍RadioButton的布局属性和使用方法;4 ImageView:图片组件,主要介绍ImageView的的布局属性和使用方法;下面我们介绍CheckBox

26、复选框组件;CheckBox组件的父类为Compound Button:下而是 CheckBox的基本属性和方法;1 android:checked : setChecked设置按钮的勾选状态5 android:button: setButtonDrawable 设置按钮左侧的图片6 sctOnChcckcdChangcListcncr:设置勾选状态的监听器7 isChecked:判断组件是否勾选CheckBox背景可以使用选择器,选择器保存在res/drawable/checkbox_selector.xinl文 件中:选择器有勾选和不被勾选两种状态,属性如下: 好选框被勾选的状态下使用dr

27、avable/checkbox_choose背景图片; 复选框不被勾选状态下使用drawable/checkbox_unchoose背景图片;CheckBox组件的实现流程如卜:1 Activity中实现复选框按钮点击事件监听器,使用了父 类接口 (CompoundButton.OnChcckcdChangcListcncr) ;2 定义 CheckBox 变量并初始化, 将复选框选中事件注册到Activity事件监听器;3在Activitity中重写父类CompoundButton的onChcckcdChangcd方法实现按钮的单击事 件处理:1 onCheckedChanged方法有两个参

28、数,第一个参数compoundBullon表示被点击 的复选框:第二个参数表示复选框按钮是否被选中;2首先将父类组件compoundButton 强制转换为CheckBox对象3根据onCheckedChanged传递的参数b判断复选框按钮是否 被选中4使用mCheckBox.getTextO获取被选中组件的文本内容;5使用 mCheckBox.geildO获取被选中组件的组件Id: 6使用niTextView.setText将复选框信息显 示;第2课时(40分钟)(3.3中级组件2)下而我们介绍Switch开关组件;Switch组件的父类为CompoundButton:下面是Switch组

29、件的基本属性和方法;1 android:textOn : settextOn设置右侧开启的文本;8 android:textOff: settextOff 设置左侧开启的文本;9 androidzswitchPadding: sctSwitchPadding 设置左右开关按钮的距离;10 android:thumb: setThumbDrawable 设置开关轨道背景;Switch背景可以使用选择器,选择器保存在res/drawable/switch_selector.xml文件中; 选择器有勾选和不被勾选两种状态,属性如下: Switch 被勾选的状态下使用drawable/switch_o

30、n 背景图片; Switch不被勾选状态下使用drawable/swilch off背景图片;Swiich组件的实现流程如下:1 Activity中实现复选钮点击事件监听器,使用了父类接口 (CompoundBulton.OnCheckedChangeListener) ;2 定义 Switch 变量并初始化,将复选框选 中事件注册到Activity事件监听器;3在Activility中重写父类CompoundButton的onCheckedChanged方法实现按钮的单击事 件处理;1 onCheckedChanged方法有两个参数,第一个参数CompoundButton表示被点击 的复选框

31、:第二个参数表示复选框按钮是否被选中;2根据。nChcckcdChangcd传递的参 数b判断复选框按钮是否被选中3使用compoundButton.getText()获取被选中组件的文本 内容:5使用CompoundButton.gelid。获取被选中组件的组件Id: 6使用mTcxtVicw.sciTcxt 将开关组件信息显示;第3课时(40分钟)(3.3中级组件3)下面我们介绍RadioButton圆形单选框组件:RadioButton组件的父类为RadioGroup:下面 是RadioButton组件的基本属性和方法;1 android:check : check 选中指定 id 的按

32、钮;2 getCheckedRadioButtonld:获取被选中按钮的 Id;3 setOnCheckedChangeListener:设置勾选状态的监听器;RadioButton圆形单选框组件背景可以使用系统默认的背景,也可以使用选择器,选择 器保存在res/drawable/radio_selector.xml文件中;选择器有勾选和不被勾选两种状态, 属性如下:RadioButton被勾选的状态下使用drawable/radio_choose背景图片; RadioButton不被勾选状态下使用drawable/radio_unchoose背景图片;RadioButton组件的实现流程如下

33、:1 Activity中实现复选钮点击事件监听器,使用了父类接口 (RadioGroup.OnCheckedChangeListener);2定义RadioButton和RadioGroup变量并初始化3使用RadioGroup对象将复选框选中事件注册到Activity事件监听器:(圈记 mRadioGroup LsetOnCheckedChangeListener(tliis);)4将第一个选项设置为默认选中:在Activitity中重写父类radioGroup的onCheckedChanged方法实现按钮的单击事件处理;1 onCheckedChanged方法有两个参数,第一个参数radi

34、oGroup表示所有的单选框;第二 个参数i表示第i中单选框被选中;2 使用 radioGroup.getCheckedRadioButtonldO获取被选中组件的 ID3通过ID获取被选中组件对象4使用mRadioButton.getTextO获取被选中组件的文本内容;5使用Toast将圆形单选框的 选择信息显示;第4课时(40分钟)(3.3中级组件4)下面我们介绍ImageView图片组件;下面是Image View图片组件的基本属性和方法;1 android:scaleType : setScaleTypc 设置图像的拉伸类型;2 android:src: setlmageDrawabl

35、e 设置图像 Drawable 对象;3 android:sre: setlmageResource 设置图像资源 ID;4android:src: seilmageBitm叩设置图像的位图对象;scaleType用于描述图片的拉伸类型;下面是scaleType的类型和说明;I FIT_XY拉伸图片填满视图4 FIT.START拉伸图片位于视图左方3 FIT_CENTER拉伸图片位于视图中心4 FIT.END拉伸图片位于视图右方5 CENTER保持图片原尺寸,并使其位于视图中间6 CENTER.CROP拉伸图片充满视图,并使其位于视图中间7 CENTER_INSIDE图片位于视图中间(只压不拉

36、)下面使用RadioButton单选框实现的ImagcVicw的各种scalcTypc的各种效果;实现流程如 下:1 Activity中实现复选钮点击事件监听器,使用了父类接口(RadioGroup.OnChcckcdChangcListcncr) ;2 定义 Image View 和 RadioGroup 变量并初始 化3使用RadioGroup对象将复选框选中事件注册到Activity事件监听器:(圈记 mRadioGroupl .setOnCheckedChangeListener(this);)3在Aciivitity中重写父类rad沁Group的onCheckedChanged方法实

37、现按钮的单击事件处理: 1 onCheckedChanged方法有两个参数,第一个参数radioGroup表示所有的单选框;第二 个参数i表示第i中单选框被选中:3根据参数i决定是选择的是哪一个scaleType; 4根 据选择的scaleType拉伸类型,设置Image View图片的拉伸类型课后作业: Activity组件应用完成一个图片显示器5第3章Android组件教案3备注学科Android应用开发基础备注教 学 过 程第一课时(40分钟)(1.1 Android 概述)本节我们主要介绍Android的概述,主要包括下面三方面的内容:1 了解Android的历史和架构2如何搭建And

38、roid的集成开发环境Android Studio3如何创建Android模拟器安卓一词本意为机器人,是谷歌于2007年5月推出的基于Linux平台的开源操作系统, 主要应用于手机和平板电脑;下面我们看一下安卓的版本发布,2008年9月,谷歌正式发 布了安卓1.0系统;2010年12月,谷歌正式发布了安卓2.3操作系统(姜饼),安卓应用数 量首次突破了 10万个;2017年8月发布了安卓8.0 Ore。(奥利奥):目前最新的商用版本 是2018年5月发布了安卓9.0Pie (派);下面我们看一下 Android 版本占有率;Android8.0 : 7.1 %: Android7.0 : 30

39、 %: Android6.0 : 25.5%; Android5.0 : 22.4%; Android4.0 : 14.6%;超过半 Android 手机使 用了 Android 6.0以上的版本Android系统架构分为四层;Linux内核(Linux Kernel):提供系统核心服务;系统运行库:Java核心库集合:Android应用程序运行在Dalvik的虚拟机; 系统核心库:主要包括C/C+库的集合,提供给Android的各个控件使用:应用程序框架层:提供了 Android应用程序所需要的组件和服务;应用层:核心应用程序集合;主耍包括联系人,电话,日历,地图等:卜面我们介绍一下如何进行

40、Android的开发环境搭建;主要分为三部分;1 Java开发工具包(Java Dcvelopmem kii, JDK)的下我和安装:2 Android Studio开发环境的下载和安装:3 安卓模拟器(Android Virtual Device, AVD)的使用JDK的下载:进入 Oracle 公司的主界面 ,选择 JDK Download ; JDK下载页面单击按钮,进入JDK的下载列表,根据操作系统的不同选择不同的JDK版 本;JDK的安装和配置:单击下载完成的JDK可执行文件,单击“下一步”按钮,选择安装的JDK路径,完成安装; 进入电脑的“控制面板”-“系统”左边侧栏的“高级系统设

41、置”,进入“环境变量”项; 设置 JAVAJ4OME 环境变量为 JDK 的安装路径; 设置Path环境变量为JDK的bin目录路径;谷歌提供了安卓集成的Android Sludi。开发环境,可以从官网和中文社区中下载,目前开 发环境版本是2018年9月发布的Android Studio 3.2;下面介绍Android Studio的安装;进入欢迎安装页面后使用默认选项;设置Android Studio 安装目录;设置Android SDK的安装目录;设置完成后大概需要3分钟左右,出现启动 Android Studio的复选框;安装顺利完成:启动后点击“开启一个新的Android Studio

42、 Project”就进入了 Android Studio的开发环境; 还可以从Android Studio中文社区下我汉化包:在Android Studio安装目录下备份lib/resource_en.jar文件;使用压缩软件打开(非解 压)resource_en.jar文件将汉化包文件替换原英文语言包文件后点击保存已经替换的语言包 文件,添加回lib/目录,替换之前的resource en.jar文件课题第3章Android组件3.3中级组件和适配器周次5时数4授课班级18移动互联37 3-2教学目的及要求:1、熟练掌握Adapter的类结构和实现方法2、熟练掌握Spinner的适配器使用方

43、法3、熟练掌握ListVicw的适配器使用方法4、熟练掌握自定义Adapter的实现方法5、熟练掌握自定义Adapter的内存优化实现方法教学重点: 熟练掌握ListView的适配器使用方法 熟练掌握自定义Adapter的实现方法 熟练掌握自定义Adapter的内存优化实现方法教学难点: 熟练掌握自定义Adapter的内存优化实现方法实验仪器及教具:PC 机、windows 操作系统、JDK、Android Studio备教 学 过 程注第1课时(40分钟)(3.4 适配器-Spinner)本节我们主要介绍Android的适配器以及对应的组件,主要包括下面组件:1 Spinner下拉组件:主要

44、介绍Spinner下拉组件使用ArrayAdapter显示数据的 实例;2 ListView:列表组件,主要介绍Li st View与SimpleAdapler显示数据的实例:3自定义Adapter:主要介绍ListView使用自定义Adapter显示数据的实例;4 Adapter优化:主要介绍Adapter优化的意义和实现方法;下面我们介绍Adapter适配器;Android有许多列表组件需要显示多条数据,比如Spinner, ListView, GridView, ViewPager 等;Adapter 作为数据与列表组件的桥梁, 主要作用有以下两点:1对要进行显示的数据进行处理2通过与视

45、图对象绑定将数据显示到视图对象Adapter,数据源和列表组件的关系如下图:1 Adapter主要负责将不同的数据源显示到列表组件中(根据ppi出动态效果图),比如 数据库或者网络获取的Cursor数据,还有以ArayList为代表的列表数据,2列表类组件通过不同的Adapter适配将不同类型的数据进行显示;Android中Adatper类的继承关系如下图所示:2 Adapter类是所有适配器的父类;3 Li st Adapt er类和SpinnerAdapter是Adapter的子类,用于显示简单的列表数据;4 BascAdapter是一种复杂适配器,用户可以在BaseAdapter基础上开

46、发自定义适 配器处理各种复杂数据:5 CursorAdaptcr, SimplcAdaptcr是BascAdaptcr适配器的子类,用户可以直接用 作LislView组件的数据显示;下面我们介绍Spinner下拉单选框组件;下面是Spinner组件的基本属性和方法;1 android:prompt : setPrompt 设置标题文字;2 setAdapter:设置下拉列表的适配器;3 setSelection:设置组件当前选择项;4 setOn11emSe 1 ectedLisIener:设置组件选择子项监听器;Spinner的例子如图所示;Spinner 一般使用ArrayAdapter作

47、为适配器,ArrayAdapter适配器主要用于显示列表类的数据;数据源为字符数组,Spinner组件通过ArrayAdapter将字符数组显示到组件;Spinner的代码实现如下图所示;1 Aclivily中实现下拉框子项选中事件监听器,使 用了父类接口 (AdapterView. OnltemSelectedListener) ;2 定义 Spinner 变量并初 始化,将下拉框子项选中事件注册到Activity事件监听器;3数据进行初始化(1)定义字符数组String口 strWeek; (2)定义并初始化ArrayAdapter 对象,第一个参数代表当前的Activity,第二个参数代表使用系统默认的布局显示Spinner的子项:(3)第三个参数使用字符数组slrWeek:(4) Spinner组件对象的初始化;使用

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com