《Android移动应用基础教育资料.》中国铁道出版社课后习题(附答案-).doc

上传人:小** 文档编号:806603 上传时间:2019-07-16 格式:DOC 页数:14 大小:56.01KB
返回 下载 相关 举报
《Android移动应用基础教育资料.》中国铁道出版社课后习题(附答案-).doc_第1页
第1页 / 共14页
《Android移动应用基础教育资料.》中国铁道出版社课后习题(附答案-).doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《《Android移动应用基础教育资料.》中国铁道出版社课后习题(附答案-).doc》由会员分享,可在线阅读,更多相关《《Android移动应用基础教育资料.》中国铁道出版社课后习题(附答案-).doc(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Android移动应用基础教程移动应用基础教程习题答案习题答案姓名: 班级: 联系方式:第第 1 章章 Android 基础入门基础入门一、填空题 1、Android 是 Google 公司基于 Linux 平台开发的手机及平板电脑的操作系统 2、Android 系统采用分层结构,由高到低依次为应用程序层、应用程序框架层、核心类库、 Linux 内核。 3、ADB 的常见指令中,用于开启 ADB 服务的是 adb start-server。 4、在 Android 程序中,src 目录用于放置程序的 java 代码文件。 5、Android 程序开发完成后,如果要发布到互联网上供别人使用,需要

2、将程序打包成.apk 文件。二、判断题 1、Android 实际上就是一个手机。 2、WCDMA 是中国自己独自定制的 3G 标准,中国移动使用的就是这种标准。 3、android 第一个版本 Android 1.1 是 2008 年 9 月发布的。 4、gen 目录是自动生成的,主要有一个 R.java 文件,该文件可手动修改。 5、AndroidManifest.xml 文件是整个程序的配置文件。 三、选择题 1、随着智能手机的发展,移动通信技术也在不断升级,目前应用最广泛的是(C) A、1GB、2GC、3GD、4G 2、ADT Bundle 中包含了三个重要组成部分,分别是(ABC) A

3、、EclipseB、SDKC、SDK Manager,exeD、ADB 3、应用程序层是一个核心应用程序的集合,主要包括(B) A、活动管理器B、短信程序C、音频驱动D、Dalivik 虚拟机 4、ADB 的常见指令中“列出所有设备”的指令是(C) A、adb uninstallB、adb installC、adb deviceD、adb emulator -avd 5、创建程序时,填写的 Application Name 表示(A) A、应用名称B、项目名称C、项目的包名D、类的名字 四、简答题 1、简要说明 Android 体系结构中每个层的功能。 Android 体系结构总共包含四层,分

4、别是: 应用程序层: 设备上安装的软件应用都属于这一层 应用程序框架层 :包含应用 API 核心类库:包含系统库和运行环境,系统库包含了底层 C 代码;运行环境包含了 Java 的核心库和 Dalvik 虚拟机 Linux 内核:提供 Android 的底层驱动。 2、简要说明 ADB Bundle 开发工具中 SDK 的作用。 SDK 包含了 Android 的 API 源代码、各种工具、示例工程、用到的各种资源模板等。第第 2 章章 Android UI 开发开发一、填空题 1、Android 中的布局分为 6 种,分别是 RelativeLayout、LinearLayout、Table

5、Layout、GirdLayout、FrameLayout 和 AbsoluteLayout。 2、Android 相对布局中,表示“是否跟父布局左对齐”的属性是 android:layout_alignParentLeft。 3、线性布局主要有两种形式,一种水平线性布局,另一种是竖直线性布局。 4、创建 Android 程序时,默认使用的布局是 RelativeLayout。 5、LogCat 区域中有 V、D、I、W 和 E 等 5 个字母,其中 V,代表显示全部信息、D 代表显示 调试信息、I 代表显示一般信息、W 代表显示警告信息、E 代表显示错误信息。 二、判断题 1、相对布局中 a

6、ndroid:layout_alignRight 属性表示“在指定控件左边” 。 2、Toast 的作用是显示一些提示信息。 3、Table Row 必须要设置 layout_width 和 layout_height 属性。 4、帧布局中可以添加多个控件,这些控件会重叠的在屏幕左上角显示。 5、Android 程序中是不支持国际化的。 三、选择题 1、一下属性中, (D)属性可以“在指定控件左边” 。 A、android:layout_alignLeftB、android:layout_alignParentLeft C、androif:layout_leftD、android:layout

7、_toLeftOf 2、表格布局中 android:layout_column 属性的作用是指定(D) 。 A、行数B、列数C、总行数D、总列数 3、实际开发中刮刮乐游戏的布局是按照(C)写的。 A、相对布局B 线性布局C、帧布局D、绝对布局 4、网格布局是 Android(D)新增的布局。 A、3.0B、3.1C、3.2D、4.0 5、相对布局中, “是否跟父布局底部对齐”是属性(C) A、android:layout_alignBottomB、android:layout_alignParentBottom C、android:layout_alignBaselineD、android:l

8、ayout_below 四、简答题 1、请简述一下如何在程序中使用 Toast。 使用 Toast 可以直接调用 Tosast 的静态方法:Toast.makeText(this, text, duration).show(); 也可以创建出 Toast 对象,如:Toast toast = new Toast(this);toast.setText(“提示信息“);toast.show(); 2、请说明布局有几种类型,以及每种类型的作用。 一共有六种布局,它们的作用分别是: RelativeLayout:相对于其他控件或者容器决定控件的位置; LinearLayout:使控件以竖直或者水平方

9、向排列; TableLayout:使控件以表格形式排列; GirdLayout:能使控件交错显示,能够避免因布局嵌套对设备性能的影响,更利于自由 布局的开发; FrameLayout:使控件按照创建顺序在屏幕的左上角重叠显示;AbsoluteLayout:通过绝对的坐标控制控件摆放的位置。第第 3 章章 Activity一、填空题 1、Activity 生命周期的三种状态分别是运行状态、暂停状态和停止状态。 2、Activity 的 4 种启动模式是 standard、singleTop、singleTask 和 singleInstance。 3、Android 中 Intent 寻找目标组

10、件的方式有两种:隐式 Intent 和显式 Intent。 4、Activity 生命周期中“回到前台,再次可见时执行”时调用的方法是 onRestart()。 5、Android 提供了一个 startActivityForResult()方法来实现回传数据。 二、判断题 1、Activity 是 Android 应用程序的四大组件之一。 2、Intent 一般只用于启动 Activity 不能开启广播和服务。 3、Intent 可以用来卡其 Activity,同样它也可以用来在 Activity 之间传递数据。 4、Activity 默认的启动模式是 singleTop 模式。 5、在数据

11、传递时,如果需要获取返回的数据,需要使用 onActivityResult()方法。 三、选择题 1、一个应用程序默认会包含(A)个 Activity。 A、1B、2C、3D、4 2、下列方法中,Activity 从启动到关闭不会执行的是(D) 。 A、onCreate()B、onStart()C、onResume()D、onRestart() 3、下列组件中,不能使用 Intent 启动的是(D) 。 A、ActivityB、启动服务C、广播D、内容提供者 4、startActivityForResult()方法接收两个参数,第一个是 Intent,第二个是(C) 。 A、resultCod

12、eB、requestCodeC、请求码D、data 5、下列关于 Activity 的描述,错误的是(C) A、Activity 是 Android 的四大组件之一 B、Activity 有 4 种启动模式 C、Activity 通常用于开启一个广播事件 D、Activity 就像一个界面管理员,用户在界面上的操作是通过 Activity 来管理的 四、简答题 1、简要说明 Activity 的 4 种启动模式的区别。 四种启动模式分别是: Standard:每当启动一个新的 Activity,它就会进入任务栈,并处于栈顶的位置,对于 使用 standard 模式的 Activity,系统不会

13、判断该 Activity 在栈中是否存在,每次启动都 会创建一个新的实例。 SingleTop:与 standard 类似,不同的是,当启动的 Activity 已经位于栈顶时,则直接 使用它不创建新的实例。如果启动的 Activity 没有位于栈顶时,则创建一个新的实例位 于栈顶。 SingleTask:创建的 Activity 只存在一个实例。已经存在则直接使用该实例,并将当前 Activity 之上的所有 Activity 出栈,如果没有发现则创建一个新的实例。 singleInstance:启动一个新的任务栈管理 Activity 2、简要说明 Activity 的三种状态以及不同状态

14、使用的方法。 Activity 三种状态分别是: 运行状态:该状态下可以对界面进行操作暂停状态:界面可见但不具有焦点无法点击 停止状态:界面不可见,一般在停止状态时保存数据以防止程序被系统强制杀死。第第 4 章章 数据存储数据存储一、填空题 1、序列化是将对象状态转换为可保持或传输的过程。 2、Android 中的文件可以存储在内存和 SD 卡中。 3、通常情况下,解析 XML 文件有三种方式,分别为 DOM、SAX、PULL。 4、SharedPreferences 是一个轻量级的存储类,主要用于存储一些应用程序的配置参数。 5、Android 中的数据存储方式有 5 中,分别是文件、Sha

15、redpreferences、Sqlite、网络和 ContentProvider。 二、判断题 1、SharedPreferences 本质上是一个 XML 文件,以 Map形式存入文件中。 2、文件存储是通过 I/O 流的形式吧数据原封不动的存储到文档中。 3、XML 文件只能用来保存本地数据,不能在网络中传输。 4、ContentProvider 表示内容提供者,用于显示程序中的数据。 5、档用户将文件保存至 SD 卡时,需要在清单文件中添加权限android.permission.WRITE_E XTERNAL_STORAGE。 三、选择题 1、下列文件操作全险种,指定文件内容可以追加

16、的是(C) A、MODE_PRIVATEB、MODE_WORLD_READBLE C、MODE_APPENDD、MODE_WORLD_WRITEABLE 2、下列代码中,用于获取 SD 卡路径的是(D) A、Environment.getSD();B、Environment.getExternalStorageState(); C、Environment.getSD Directory();D、Environment.getExternalStorageDirectory();3、下列选项中,关于文件存储数据的说法错误的是(D) A、文件存储是以流的形式来操作数据的B、文件存储可以将数据存储到

17、 SD 卡中 C、文件存储可以将数据存储到内存中D、Android 中只能使用文件存储数据 4、下列选项中美观与 XML 序列化和解析描述合理的是(BD) A、DOM 解析会将 XML 文件的所有内容以文档树方式存放在内存中 B、在序列化学像是,需要使用 XmlSerialize 序列化器,即 XmlSerializer 类 C、XmlSerializer 类的 startDocument()方法用于写入序列号的开始节点 D、XmlSerializer 类的 setOutput()方法用于设置文件的编码方式 5、如果要将程序中的私有数据分享给其他应用程序,可以使用的是(C) A、文件存储B、S

18、haredPreferencesC、ContentProviderD、SQLite 四、简答题 1、请简述 Android 系统中的 5 种数据存储方式各自的特点。 五种存储方式各自的特点分别是: 文件存储:可以存储较大文件,以 IO 流形式传输数据。 Sqlite:占用内存小,所有文件都存放在单一文件中。 网络:通过网络将数据传输到服务器存储,避免了客户端的安全隐患。 Sharedpreference:使用方便,可以存储配置信息,以键值对的形式存于内存中 ContentProvider:提供自身暴漏的数据给第三方应用使用,统一了数据访问格式,以 数据库形式保存数据。 2、请简述 Shared

19、Preferences 如何存储数据。 使用 Sharedpreference 储存数据时因为它本身没有写文件的功能,因此需要使用 Editor 对象将数据存入内存,比如:SharedPreferences sp = getSharedPreferences(“config“, 0);Editor editor = sp.edit();editor.putString(“a“, “a“);mit(); 第第 5 章章 SQLite 数据库数据库一、填空题 1、ListView 的适配器有三种,分别是 BaseAdapter、SimpleAdapter 和 ArrayAdapter。 2、创建数

20、据库及数据库版本更新需要继承 SQLiteOpenHelper。 3、SQLite 创建时调用 onCreate()方法,升级时调用 onUpgrade()方法。 4、要查询 SQLite 数据库中的信息需要使用 Cursor 接口,使用完毕后条用 close 关闭。 5、创建 ListView 的布局界面必须通过 id 属性才能使数据显示在界面上。 二、判断题 1、SQLite 数据库使用完后不需要关闭,不影响程序性能。 2、使用 ListView 显示较为复杂的数据时最好用 ArrayAdapter 配适器。 3、SQLite 既支持 Android 的 API 又支持 SQL 语句进行增

21、、删、改、查操作。 4、使用 BaseAdapter 控制 ListView 显示多少条数据是通过 getView()方法设置。 5、SQLite 只支持 NULL、INTEGER、REAL、TEXT 和 BLOB 等 5 种数据类型。 三、选择题 1、使用 SQLite 数据库进行查询后,必须要做的操作是(AC) A、关闭数据库B、直接退出C、关闭 CursorD、使用 quit 函数退出 2、关于适配器的说法正确的是(B) A、它主要用来存储数据B、它主要用来把数据绑定在组件上 C、它主要用来存储 XML 数据D、它主要用来解析数据 3、使用 SQLiteOpenHelper 类可以生成一

22、个数据库并可以对数据库版本进行管理的方法(B) 。 A、getDatabase()B、getWriteableDatabase() C、getWriteableDatabase()D、getAbleDatabase() 4、下列命令众,属于 SQLite 下命令的是(C) A、shellB、pushC、quitD、keytool 5、下列关于 ListView 使用的描述中,不正确的是(B) A、要使用 ListView,必须为该 ListView 使用 Adpater 方式传递数据 B、要使用 ListView,该布局文件对应的 Activity 必须继承 ListActivity C、Li

23、stView 中每一项的视图布局既可以使用内置的布局,也可以使用自定义的布局方式 D、ListView 中每一项被选中时,将会触发 ListView 对象的 ItemClick 事件 四、简答题 1、简要说明 SQLite 数据库创建的过程 首先创建一个类继承 SQLiteOpenHelper,重写 onCreate()方法并在该方法中创建表,使用创建 出的 SQLiteOpenHelper 的子类对象的 getWritableDatabase()方法获得一个可读写的数据库对象。 2、请简要说明 BaseAdapter 适配器 4 个抽象方法以及它们的具体作用 getCount:得到 Item

24、 的总数 getItem:根据 position 得到某个 Item 的对象 getItemId:根据 position 得到某个 Item 的 id getView:得到相应 position 对应的 Item 视图,position 当前 Item 的位置,convertView 复用的 View 对象。第第 6 章章 内容提供者内容提供者 一、填空题 1、ContentProvider 匹配 Uir 需要使用的类是 UriMatcher。 2、使用内容观察者时,调用 onChange()方法可以得到数据变化的信息。 3、ContentProvider 提供了对数据增、删、改、查的方法,分

25、别为 insert、delete、update 和 query。 4、ContentProvider 用于保存和检索数据,是 Android 不同应用程序之间共享数据的接口。 5、在应用程序中,使用 ContentProvider 暴露自己的数据,通过 ContentResolver 对暴露的数据 进行操作。 二、判断题 1、ContentProvider 所提供的 Uir 可以随便定义。 2、ContentResolver 可以通过 ContentProvider 提供的 Uir 进行数据操作。 3、ContentObserver 观察指定 Uir 数据发生变化时,调用 ContentPro

26、vider 的是 OnChange 方法。 4、使用 ContentRsolver 操作数据是,必须在清单文件进行注册。 5、ContentProvider 与 Activitry 一样,创建时首先会调用 onCreatr()方法。 三、选择题 1、下列选项中,属于 Android 中四大组件的是(ABC) 。 A、ActivityB、ContentReceiverC、ServiceD、ContentObserver 2、下列关于 ContentResolver 的描述,错误的是(C) 。 A、可以操作数据库数据B、操作其他应用数据必须知道包名 C、只能操作 ContentProvider 暴

27、露的数据D、可以操作 ContentProvider 的任意数据 3、下列关于内容提供者的描述,正确的是(ACD) 。 A、提供的 Uir 必须符合规范B、可以提供本应用所有数据供别人访问 C、必须在清单文件注册D、authorities 属性必须和包名一致 4、继承 ContentProvider 类必须重写它的(ABD)方法。 A、delete()B、insert()C、onStart()D、onUpdate() 5、下列关于内容观察者的说法,正确的是(C) 。 A、可以观察任何数据B、观察其它应用数据需要权限 C、只能观察到指定 Uir 的数据D、观察其他应用数据必须在清单文件注册 四、

28、简答题 1、请简要说明 ContentProvider 对外共享数据的好处。 通过 ContentProvider 共享数据统一了数据访问方式,使用起来更规范,通过数据库存储并 指定了 URI,只有通过特定 URI 才能访问数据,使数据更安全。 2、请简要说明 ContentProvider、ContentResolver 和 ContentOberver 之间的联系。 ContentProvider 可以共享自己的数据给外部应用访问,要访问 ContentProvider 暴漏的数据 就要用到 ContentResolver。而 ContentObserver 就相当于中间人的角色,它可以事

29、实监听 ContentProvider 的数据是否发生变化,如果发生变化就会触发 onChange()方法, Contentresolver 可以在 onChange()方法中查询的哪些数据发生了变化再对数据进行操作。第第 7 章章 广播接收者广播接收者一、填空题 1、广播接收者可以在清单文件使用 receiver 注册。2、终止广播需要使用 abortBroadcast()方法。 3、广播的发送有两种形式,分别为有序广播和无序广播。 4、代码注册广播需要使用 registerReceiver 方法,接触广播需要使用 unregisterReceiver 方法。 5、指定接收广播类型的函数是

30、sendOrderedBroadcast()。 二、判断题 1、每一个广播只能有一个广播接收者接收。 2、广播接收者是四大组件之一,必须要在清单文件中注册。 3、广播接收者的注册信息必须要保持唯一性。 4、可以在 BroadcastReceiver 和 onReceiver 方法中处理耗时复杂的业务。 5、广播接收者注册后必须要手动关闭。 三、选择题 1、继承 BroadcastReceiver 会重写(A)方法。 A、onReceiver()B、onUpdate()C、onCreate()D、onStart() 2、关于广播的作用,说法正确的是(A) 。 A、它主要用来接收系统发布的一些消息

31、的B、它可以进行耗时的操作 C、它可以启动一个 ActivityD、它可以帮助 Activity 修改用户界面 3、下列方法中,用于发送一条有序广播的是(B) 。 A、startBroadcastReceiver()B、sendOrderedBroadcast() C、sendBroadcast()D、sendReceiver() 4、在清单文件中,注册广播时使用的结点是(C) 。 A、B、 C、D、 5、关于 BroadcastReceiver 说法不正确的是(B) 。 A、是用来接收广播 Intent 的 B、一个广播 Intent 只能被一个订阅了此广播的 BroadcastReceiv

32、er 所接收 C、对有序广播,系统会根据接受者声明的优先级别按顺序逐个执行接收者 D、接收者生命的优先级别在 android:priority 属性中生命,数值越大优先级别高 四、简答题 1、说明注册广播有几种方式,以及这些方式有何优缺点。 注册广播有两种方式。 非常驻型广播:这种广播依赖于注册广播的组件的生命周期,例如,在 Activity 中注册广播接收者,当 Activity 销毁后广播也随之被移除。 常驻型广播:当应用程序关闭后,如果接收到其他应用程序发出的广播,那么该 程序会自动重新启动。但是 4.0 以上的系统中如果安装了应用但是没有打开过, 当有广播发出时应用也接收不到广播信息。

33、 2、简要说明接收系统广播时哪些功能需要使用权限。 拨打电话: 发送短信: 设备开机:电池电量低:第第 8 章章 服务服务一、填空题 1、在创建服务时,必须要继承 Service 类。 2、绑定服务事,必须要实现服务的 onBind()方法。 3、在清单文件中,注册服务时应该使用的结点为。 4、服务的开启方式有两种,分别是 startService()和 bindService()。 5、在进行远程服务通信时,需要使用 AIDL 接口。 二、判断题 1、以绑定方式开启服务后,服务与调用者没有关系。 2、服务的界面可以设置的很美观。 3、以绑定方式开启服务后,当界面不可见时服务就会被关闭。 4、

34、在服务中可以处理长时间的耗时操作。 5、服务不是 Android 中的四大组件,因此不需要在清单文件中注册。 三、选择题 1、每一次启动服务都会调用(D)方法。 A、onCreate()B、onStart()C、onResumeD、onStartCommand 2、下列选项中,属于绑定服务特点的是(ABC) 。 A、以 bindService()方法开启B、调用者关闭后服务关闭 C、必须实现 ServiceConnectionD、使用 stopService()方法关闭服务 3、Service 与 Activity 的共同点是(AC) 。 A、都是四大组件之一B、都有 onResume()方法

35、 C、都可以被远程调用D、都可以自定义美观界面 4、下列方法中,不属于 Service 生命周期的是(A) A、onResume()B、onStart()C、onStop()D、onDestory() 5、关于 Service 生命周期的 onCreate()和 onStart()方法,说法正确的是(BD) A、如果 Service 已经启动,将先后调用 onCreate()和 onStart()方法 B、当第一次启动的时候先后调用 onCreate()和 onStart()方法 C、当第一次启动的时候只会调用 onCreate()方法 D、如果 Service 已经启动,只会执行 onSta

36、rt()方法,不再执行 onCreat()方法 四、简答题 1、请简要说明使用 AIDL 访问远程服务的步骤。 使用 AIDL 接口实现通信的步骤如下: 1)在需要被调用的服务的项目中创建 AIDL 接口; 2)创建相应的服务 3)创建第二个项目用于调用服务。将服务中的 aidl 接口拷贝到第二个项目中,包名 要和服务中的包名一致。 2、请简要说明 Service 的几种启动方式及其特点。 服务两种启动方式,分别是: Start 方式启动:服务与调用者没有绝对关联,当调用者关闭后服务还会一直在后 台运行。 Bind 方式启动:服务与调用者的生命周期所关联,当调用者关闭时,服务也会关 闭。第第

37、9 章章 网络编程网络编程一、填空题 1、Android 系统提供了多种网络通信方式,包括 Socket 通信、HTTP 通信、URL 通信和 WebView。 2、当客户端与服务器端建立连接后,想服务器端发送的请求,被称 HTTP 请求。 3、Android 客户端访问网络发送 HTTP 请求的方式一般有两种,HttpURLConnection 和 HttpClient。 4、与服务器交互过程中,最常用的两种数据提交方式是 GET 和 POST。 5、为了根据下载进度实时更新 UI 界面,需要用到 Handle 消息机制来实现线程间通信。 二、判断题 1、HttpURLConnection

38、是一个标准的 Java 类。 2、使用 HttpClient 访问网络时,不需要创建 HttpClient 对象。 3、GET 方式是以实体的方式得到由请求 URL 所指向的资源信息。 4、HttpClient 是对 AsyncHttpClient 的再次包装。 5、在多线程下载中,每个线程必须要下载对应的模块,然后将这些模块顺序序组组合。 三、选择题 1、下列选项中,不属于 Handler 机制中的关键对象是(A) 。 A、ContentB、HandlerC、MessageQueueD、Looper 2、下列通信方式中,不是 Android 系统提供的是(D) 。 A、Socket 通信B、

39、HTTP 通信C、URL 通信D、以太网通信 3、关于 HttpURLConnection 访问网络的基本用法,描述错误的是(C) 。 A、HttpURLConnection 对象需要设置请求网络的方式 B、HttpURLConnection 对象需要设置超时时间 C、需要通过 new 关键字来创建 HttpURLConnection 对象 D、访问网络完毕需要关闭 HTTP 链接 4、下列选项中,不属于 AsyncHttpClient 特点的是(D) A、发送异步 HTTP 请求 B、HTTP 请求发生在 UI 线程之外 C、内部采用了线程池来处理并发请求 D、自动垃圾回收 5、下列选项中,

40、关于 GET 和 POST 请求方式,描述错误的是(B) 。 A、使用 GET 方式访问网络 URL 的长度是有限制的 B、HTTP 协议规定 GET 方式请求 URL 的长度不超过 2K C、POST 方式对 URL 的长度是没有限制的 D、GET 请求方式向服务器提交的参数跟在请求 URL 后面 四、简答题 1、请简述使用 HTTPClient 访问网络的步骤。 使用 HttpClient 访问网络的步骤如下: 1)创建 HttpClient 对象; 2)指定访问网络的方式,创建一个 HttpPost 对象或者 HttpGet 对象; 3)如果需要发送请求参数,可调用 HttpGet、Ht

41、tpPost 都具有的 setParams()方法。对 于 HttpPost 对象而言,也可调用 setEntity()方法来设置请求参数;4)调用 HttpClient 对象的 execute()方法访问网络,并获取 HttpResponse 对象; 5)调用 HttpResponse.getEntity()方法获取 HttpEntity 对象,该对象包装了服务器的响 应内容。也就是我们所请求的数据。 2、请简述 Handler 机制 4 个关键对象的作用。Handler 机制四个关键对象的作用如下:1)Message Message 是在线程之间传递的消息,它可以在内部携带少量的信息,用于

42、在不同线 程之间交换数据。Message 的 what 字段可以用来携带一些整型数据,obj 字段可以用来 携带一个 Object 对象。 2)Handler Handler 顾名思义就是处理者的意思,它主要用于发送消息和处理消息。一般使用 Handelr 对象的 sendMessage()方法发送消息,发出的消息经过一系列的辗转处理后,最 终会传递到 Handler 对象的 handlerMessage()方法中。 3)MessageQueue MessageQueue 是消息队列的意思,它主要用来存放通过 Handler 发送的消息。通 过 Handler 发送的消息会存在 Message

43、Queue 中等待处理。每个线程中只会有一个 MessageQueue 对象。 4)Looper Looper 是每个线程中的 MessageQueue 的管家。调用 Looper 的 loop()方法后,就 会进入到一个无线循环中。然后每等发现 MessageQueue 中存在一条消息,就会将它取 出,并传递到 Handler 的 HandlerMessage()方法中。此外每个线程也只会有一个 Looper 对象。在主线程中创建 Handler 对象时,系统已经为我们创建了 Looper 对象,所以不 用手动创建 Looper 对象,而在子线程中 Handler 对象,我们需要调用 Loo

44、per.loop()方 法开启消息循环。第第 10 章章 高级编程高级编程一、填空题 1、对图片添加旋转、缩放等特效需要使用 Matrix 类。 2、要注册各种传感器需要先获取 SensorManager 对象。 3、绘制图像需要使用多个类,分别是 Bitmap、BitmapFactory、Paint、Canvas。 4、Fragment 与 Acitivity 相比多出的几种生命周期方法是 onAttach()、onCreateView()、 onActivityCreate()、onDestroyView()、onDetach()。 5、动画中有一种 Frame 逐帧动画,通过顺序播放排列

45、好的图片来实现动画效果,类似电影。 二、判断题 1、只要是 Android 设备就可以使用任何传感器。 2、Fragment 与 Acitivity 相似,它们的生命周期也相同。 3、每次启动 Fragment 都会执行他的 onGreate 方法。 4、要使用图片旋转可以使用 Matrix 类中的 setRotate()方法。 5、Android 中开发音乐播放器可以用 MediaPlayer,开发视频播放器只能用 VideoView。 三、选择题 1、使用 MediaPlayer 播放保存在 SD 卡上的.mp3 文件时(BC) 。 A、需要使用 MediaPlayer.create 方法

46、创建 MediaPlayer。 B、直接 new MediaPlayer 即可 C、直接使用 setDataSource 方法设置文件源 D、直接调用 start 方法,无须设置问文件源 2、下列不属于补间动画相关的类是(B) 。 A、TranslateAnimationB、FrameAnimation C、RotateAnimationD、AlphaAnimation 3、关于 Fragment 说法正确的是(C) 。 A、使用 Fragment 必须在布局文件中加入控件 B、Fragment 有自己的界面和生命周期,可以完全替代 Activity C、Fragment 的状态跟随它所关联的

47、 Activity 的状态改变而改变 D、当 Fragment 停止时,与它关联的 Activity 也会停止 4、MediaPlayer 播放资源前,需要调用(B)方法完成准备工作。 A、setDataSourceB、prepareC、beginD、pause 5、下面属于 Android 动画分类的有(AB) 。 A、TweenB、FrameC、DrawD、Animation 四、简答题 1、Android 中有几种动画?它们的区别是什么? Android 中有两种动画,分别如下: 1)Tween 动画 通过对 View 中的内容进行一系列的图形变换来实现动画效果,其中图形变化包括 平移、

48、缩放、旋转、改变透明度等。补间动画的效果可以通过 XML 文件来定义也可以 通过编码方式来实现,通常情况下以 XML 形式定义的动画都会放置在程序的 res/anim(自定义的)文件夹下。 2)Frame 动画 逐帧动画就是按顺序播放事先准备好的静态图像,利用人眼的“视觉暂留”原理, 给用户造成动画的错觉。放胶片看电影的原理与逐帧动画的原理是一样的,它们都是 一张一张地播放事先准备好的静态图像。 2、简单描述 Fragment 的生命周期状态。 Fragment 的生命周期有三种状态,具体如下: 1)运行状态 当一个 Fragment 是可见的,并且它所关联的 Activity 正处于运行状态,那么该 Fragment 也处于运行状态。 2)暂停状态 当一个 Activity 进入暂停状态(另一个未占满屏幕的 Activity 并添加到了栈顶时), 与它相关联的可见 Fragment 也会进入暂停状态。 1)停止状态 当一个 Activity 进入停止状态时,与它相关联的 Fragment 就会进入到停止状态。或者 通过调用 FragmentTransaction 的 remove()、replace()方法将 Fragment 从 Activity 中移除。 如果在事务提交之前调用 add

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档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