第 1 章 Android 概述

  1. Android 系统内核基于什么操作系统?
    答:Android 是一个完整的移动操作系统,利用 Linux 作为系统内核。
    实现了存储管理、设备管理、文件管理、进程管理、安全管理等操作系统的基本功能。

  2. Google 发布的基于 Linux 平台的开放源代码移动操作系统平台名称是什么?
    答:Android。

  3. Android 运行的虚拟机名称是什么?虚拟机内运行的字节码文件后缀名是什么?
    答:Android 运行的虚拟机不是 Java 虚拟机,而是经过改造的 Dalvik 虚拟机,
    在虚拟机内运行的并不是 Java 编译后的字节码,而是后缀名为 dex 内部格式文件。

  4. Android 采用什么软件架构?整个系统包括哪几个层次?
    答:Android 采用堆栈式软件架构,整个系统从底层操作系统到顶层核心应用在内分为 5 个层次:
    Linux 内核、Android 运行环境(Android Runtime)、库集合(Libraries)、应用框架(Application Framework)、应用(Application)。

  5. 请列举 Android 的四大常用组件,并简述其特点。
    答:Activity:为应用程序提供一个活动窗口;
    Service:为应用程序提供后台运行服务;
    BroadcastReceiver:为应用程序提供广播消息处理机制;
    ContentProvider:android 中提供多应用程序数据共享。

第 2 章 Android 开发环境与开发工具

  1. Android 开发组件主要包括哪三部分?
    答:Android SDK、Android SDK Tools 和 Android SDK Platform-tools。

  2. Android 提供的专门用于 Eclipse IDE 开发环境可以让 Android SDK 集成到 Eclipse 环境中的插件名称?答:ADT 或 Android Development Tools。

  3. 请根据下图中 Android 工程目录结构,回答以下问题:
    (1)应用项目名称? HelloWorld
    (2)简述 src、gen、res 中 drawable、layout、values 各个文件夹的功能。
    src 文件夹存放项目的源代码;gen 文件夹下面有个 R.java 文件,R.java 是在建立项目时自动生成的,这个文件是只读模式的,不能更改。通过 R.java 我们可以很快地查找我们需要的资源;res 文件夹是资源目录,包含项目中的资源文件并将编译进应用程序;drawable 下存放图片文件;layout 下存放所有布局文件;values 下存放数组、颜色等资源。
    (3)Android 应用项目配置清单文件名称是什么?有什么作用
    答:AndroidManifest.xml 项目的总配置文件,记录应用中所使用的 Activity、Service 等组件以及访问权限的设置等信息。

  4. 搭建基于 Eclipse 的 Android 应用开发环境需要哪些软件及步骤?
    答:
    (1)安装 JDK(Java Development Kit);
    (2)安装 Eclipse;
    (3)安装 Android SDK;
    (4)在 Eclipse 中安装 ADT(或 Android Development Tools)插件。

第 3 章 Android GUI 开发

  1. 什么是 Activity?主要功能是什么?
    答:Activity 是一个独立的可以与用户交互的 Android 应用组件
    功能:作为应用程序框架动态加载各种用户界面视图,实现底层消息传递等,它是一个功能强大的界面管理者,负责调度各种界面视图,实现 Android 应用与用户之间的交互。

  2. 列举四种常用的事件监听处理方法。
    答:基于事件监听内部类实现事件监听处理;基于事件监听内部匿名类实现事件监听处理;Activity 本身作为事件监听器;直接绑定到标签;

  3. 简述利用 ArrayAdapter 适配器为 Spinner 或 AutoCompleteTextView 等组件提供显示内容的操作步骤。
    答:(1)通过 findViewByID 方法建立对象
    (2)提供数据:数据源可以是数组、XML 文件、List集合;
    (3)提供布局;
    (4)建立适配器 ArrayAdapter
    (5)关联适配器

  4. 列举至少四种常用的布局管理器
    答:LinearLayout、RelativeLayout、GridLayout、TableLayout、AbsoluteLayout、FrameLayout 等。

第 4 章 Activity 组件

  1. 什么是 Activity?主要功能是什么?
    答:Activity 是一个独立的可以与用户交互的 Android 应用组件
    功能:作为应用程序框架动态加载各种用户界面视图,实现底层消息传递等,它是一个功能强大的界面管理者,负责调度各种界面视图,实现 Android 应用与用户之间的交互。

  2. Activity 生命周期包括哪些方法?
    答:从 Activity 创建到停止,需经历 OnCreate()、onStart()、OnPause()、onStop()、onDestroy()等。

  3. 启动一个 Android 系统提供的“浏览网页”Activity 的源代码。
    答:
    写法 1:
    Uri uri = Uri.parse(“http://www.baidu.com”);
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
    startActivity(intent);
    写法 2:
    Intent intent=new Intent(Intent.ACTION_VIEW,Uri.parse(“http://www.baidu.com”));
    startActivity(intent);
    写法 3:
    intent=new Intent();
    intent.setAction(Intent.ACTION_VIEW);
    uri=Uri.parse(“http://www.baidu.com”);
    intent.setData(uri);
    startActivity(intent);

  4. 启动同一应用程序中的其他 Activity 的方法。
    答:Intent intent=new Intent();
    Intent.setClass(MainActivity.this,otherActivity.class);
    startActivity(intent);

  5. 使用 Intent 和 Bundle 在 Activity 间传递数据的过程。
    答:“宿主 Activity“端的流程
    1)首先创建一个 Intent 和 Bundle 对象,其中 Bundle 用于存储传递的数据;
    2)然后使用 Bundle 的 putXXX 方法输入要传递的数据;
    3)将要传递的数据压入 Intent 中 intent.putExtras(Bundle 对象);
    4)启动“随从 Activity“。
    “随从 Activity“端的流程
    1)接收“宿主 Activity“的 Intent;
    2)传递获得传入的 Bundle 对象;
    3)使用 Bundle 的 get 方法获取要传递的数据。

第 5 章 Android Service 组件

  1. 什么是 Android 的服务?其类名是什么?
    答:(1)Service 是运行在应用后台的一种组件,并没有自己的用户界面,不需要与用户直接交互。
    (2)Service

  2. Service 有哪两种基本用途?
    答:(1)执行长时间运行的耗时操作,如网络下载、音乐播放、文件系统监视等。
    (2)组件间的交互,将某些功能以 Service 组件形式进行封装,提供给其他应用组件调用,其他组件可以与 Service 组件不在同一个进程中

  3. Android 服务有哪两种启动模式?这两种启动模式各自对应的启动方法名称是什么?
    答:Service 启动模式有:
    (1)启动模式,startService()方法
    (2)绑定模式,bindService()方法

  4. 从组件生命周期的角度来看,Activity 或 Service 组件启动时第一个执行的回调方法是什么?
    答:onCreate()

  5. 启动方式和绑定方式下 Service 的生命周期分别执行什么方法?
    答:启动方式:startService-onCreate-onStartCommand-stopService-onDestroy
    绑定方式:bindSerrvice-onCreate-onBind-unBindService-onDestroy

  6. 在调试有关 Service 程序时发现尽管 Java 代码没有错误,但 Servie 组件仍然没有启动,相关的程序片断如下,请你分析该 Service 组件没有启动的原因,并修改 AndroidManifest.xml 文档使 Service 能被启动。
    Main 类中包含启动 Service 的代码(注意:这段代码没有错误):

public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.startService(new Intent(this, CountService.class));
}}

AndroidManifest.xml 文档片断(注意:下面代码存在错误):

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
<activity
            android:name=".main"
            android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

答:
(1)CountService 类未在 AndroidManifest.xml 中注册。
(2)在</activity>节点下加入:

<service android:name=".CountService"></service>

第 6 章 Android 程序间的通信

  1. 什么是 Android 的意图?其对应的类名是什么?
    答:(1)在 Android 中意图表示一个应用组件通知另一个组件去做什么事的意图。本质上来说,意图是 Android 中的一种事件处理机制。在 Android 中, Intent 是用于同一应用或不同应用的组件之间通信的消息对象,可以认为它是一种数据结构,包含对要执行的动作及相关数据的描述,一个组件发出意图(Intent),Android 根据意图(Intent)描述,找到能完成意图动作的组件,同时将意图中携带的数据交给能完成意图对象。
    (2)Android 中意图对应的类名是 Intent。(注意:类名严格区分大小写)

  2. 按创建 Intent 对象时是否明确指定接收组件名称,Intent 可分为哪两种类型?
    答:
    按创建 Intent 对象时是否明确指定接收组件名称,Intent 可分为 Intents 可以分成两种:
    显式意图(Explicit Intent ):Intent 中指定目标组件名称(component name 字段有值)。
    隐式意图(Implicit Intent):Intent 中并不指定目标组件名称 (component name 为空)。

  3. 请简要说明 Intent 中 6 个主要属性名称及功能。
    答:
    Component name:接收并处理 Intent 的组件名称
    Action:用来表示一个要执行的动作( action )名称的字符串
    Data:动作处理数据的 URI 和 MIME 类型
    Category:一个包含何种组件有资格处理 Intent 对象的信息的字符串
    Extras:用于为意图附加信息,附加的信息由键值对构成。
    Flags:Flags 可以为意图设置某种标志,可以用作意图发送者签名。设置了 Flags 的意图启动一个 Activity 后,这个 Activity 可以根据意图中的 Flags 值判断意图来自哪里。

  4. 什么是意图过滤器?其对应的类名是什么?它在 AndroidManifest,xml 文档中的元素名称是什么?
    答:
    (1)意图过滤器( intent filters )是通过将 Intent 对象内容、结构与具有接受意图潜能的组件进行比对,从而找到能处理意图的组件。
    (2)类名:lntentFilter (注意:类名严格区分大小写)
    (3)intent-filter

  5. 如果一个组件没有设置任何 intent filter,它能否接收显式意图?能否接接收隐式意图?那么,设置有 intent filter 的组件能否接收显式意图?。
    答:
    (1)如果一个组件没有任何 intent filters,它就只能接收显式意图;
    (2)不能;
    (3)带有 intent filters 的组件能同时接收显式和隐式意图。

  6. 程序填空:请根据程序注释提示,在空白下划线处补充完成程序代码。

   Button secondbtnservice = (Button)findViewById(R.id.service2);
   secondbtnservice.setOnClickListener(new View.OnClickListener() {
   public void onClick(View v) {
   // 创建一个名为 intent 意图对象
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 为该意图对象的 Action 属性字段设置名为 ACTION_VIEW 系统 Action
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 将该意图对象的 Data 属性字段设置为 http://www.people.com.cn
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 以启动模式发送该意图
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   }
   });

答:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.people.com.cn"));
startActivity(intent);
  1. 请认真阅读下面 AndroidManifest.xml 文档片断,指出是否有错,如果有错应如何修改?
   <application
           android:icon="@drawable/ic_launcher"
           android:label="@string/app_name" >
   <activity
               android:name=".Activity_comm_1"
               android:label="@string/app_name" >
   <intent-filter>
   <action android:name="android.intent.action.MAIN" />
   <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
   </activity>
   <activity android:name=".Activity_comm_2">
   <intent-filter>
   <action android:name="android.intent.action.MAIN" />
   <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
   </activity>
   </application>

答:包含如下意图过滤器节点是应用启动主类,一个应用中不允许同时包含两个启动主类,应删除其中一个应用组件的标志启动主类的意图过滤器节点:

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
  1. 程序填空:请根据程序注释提示,在空白下划线处补充完成程序代码。
   Button secondbtnservice = (Button)findViewById(R.id.service2);
   secondbtnservice.setOnClickListener(new View.OnClickListener() {
   public void onClick(View v) {
   // 创建一个名为 intent 意图对象
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 为该意图对象的 Action 属性字段设置名为 ACTION_VIEW 系统 Action
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 将该意图对象的 Data 属性字段设置为 http://www.people.com.cn
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   // 以启动模式发送该意图
   **\*\*\*\***\*\***\*\*\*\***\_**\*\*\*\***\*\***\*\*\*\***;
   }
   });

答:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.people.com.cn"));
startActivity(intent);
  1. Android 的 Broadcast 本质上是什么机制?发送广播消息有哪几种方法?
    答:Broadcast ( 广播 ) 是一种在 Android 中广泛运用在应用程序之间异步传输信息的机制。发送广播的方法有:sendBroadcast()、sendOrderedBroadcast()和 sendStickyBroadcast( )

  2. 广播消息的处理流程有哪 3 个环节?
    答:广播消息的处理流程包括以下 3 个环节:
    (1)消息发送
    (2)BroadcastReceiver 注册
    (3)消息处理

  3. BroadcastReceiver 对象的主要功能是什么?
    答:BroadcastReceiver 用于接收并处理广播消息,不管是系统消息还是自定义消息都可以通过 BroadcastReceiver 处理。

  4. BroadcastReceiver 作为应用级组件必须经过注册才能处理广播消息,注册有哪两种方式?
    答:
    (1)静态注册:在 AndroidManifest.xml 中用 标签声明,并在节点辖域中用 标签设置过滤器;
    (2)动态注册:在代码中定义并设置好一个 IntentFilter 对象,然后在需要注册的地方调用 Context.registerReceiver(BroadcastReceiver, intentFilter) 方法,撤消注册时,调用 Context.unregisterReceiver(BroadcastReceiver ) 方法。动态注册的 Context 对象被销毁时, BroadcastReceiver 也随之自动注销。

第 7 章 Android 数据存储

  1. 为了保存永久性的应用数据,Android 主要提供了哪几种数据存储方式?
    答:
    (1)Shared Preferences
    以 key-value 对方式保存私有的基本类型数据。
    (2)文件存储
    包括两种方式:在内部存储空间保存私有数据和在外部存储卡上保存公共数据。
    (3)SQLite Databases
    在私有的数据库中存储结构化数据。
    (4)Network Connection
    将数据保存在网络服务器上。
    (5)Android 还提供将私有数据开放给其他应用的途径:Content Provider。
  2. SharedPreferences 以 key-value 对的形式存储信息,请问 key 和 value 的各是什么数据类型?
    答:key 是独一无二的 String 类型名称,value 取值可以是 boolean、float、int、long 和 String 这些基本数据类型的数据。
  3. SharedPreferences 保存在哪里?能否在开发环境所在的文件系统中直接查看?
    答:SharedPreferences 保存在 Android 操作系统内部的文件系统中,位置为:data\data\应用程序报名\share-refs 目录下。不能直接查看内容,需通过 File Explorer 导出查看。 4.描述 SharedPreferences 保存数据的步骤。
    答:(1)根据 Context 的 getSharedPreferences()方法获取 SharedPreferences 对象;
    (2)利用 edit()方法获取 Editor 对象;
    (3)通过 Editor 对象存储 key-value 键值对数据
    (4)通过 commit()方法提交数据

  4. 简述 SQLiteDatabase 类功能及常用方法。
    答:SQLiteDatabase 类代表一个数据库对象,它有创建、删除、添加、更新、查询及事务处理等常用的数据库操作方法。
    SQLiteDatabase 对象提供了直接执行 SQL 语句的方法:execSQL(),可以将 SQL 语句作为该方法的字符串参数,调用该方法可以直接执行各种 SQL 语句,完成对数据库的各种操作。
    此外,SQLiteDatabase 对各种常用的数据库操作,还提供专门方法,取代直接调用 execSQL() 方法执行 SQL 语句。常用的方法有:openDatabase()、create()、insert()、query()、replace()、delete()、deleteDatabase() 等,这些方法依据参数类型和个数不同,提供了不同的重载方法。

  5. 简述 SQLite Cursor 功能和常用方法。
    答:SQLiteCursor 代表查询结果的记录集。SQLiteDatabase 的各种 query() 查询方法都会返回一个 Cursor 对象, Cursor 代表查询到的记录行集合, 它提供了浏览数据库查询结果机制,可以从查询结果中读取行或列数据。
    常用方法有: move()、moveToFirst()、moveToLast()、moveToNext()、moveToPrevious()、getColumnCount()、getColumnIndex()、getColumnName()、getCount()、getDouble()等。

  6. 根据下面程序中注释提示填写所需代码。
    //初始化私有的 SQLiteDatabase 类对象 mSQLiteDatabase 为 null
    (1)

  \***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***\_\_\_\***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***;
   private static final String DATABASE_NAME = "Test.db";
   private static final String CREATE_TABLE = "CREATE TABLE IF NOT EXISTS "
   - TABLE_NAME + " (" + \_ID + " INTEGER PRIMARY KEY,"
   - NAME + " TEXT," + AGE + " INTEGER)";
     try {
     //按 Activity.MODE_PRIVATE 模式打开或创建 DATABASE_NAME 指定的数据库,
     //并保存到 SQLiteDatabase 类对象 mSQLiteDatabase 中
     (2)\***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***\_\_\_\***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***;
     //调用 mSQLiteDatabase 对象的 exeSQL()方法执行 CREATE_TABLE 指定的 SQL 语句
     (3)\***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***\_\_\_\***\*\*\*\*\***\*\*\*\*\***\*\*\*\*\***;
     } catch (Exception ex) {
     ShowDialog("数据库操作异常:" + ex.getMessage());
     }
 答:
   (1)private SQLiteDatabase mSQLiteDatabase = null;
   (2)mSQLiteDatabase = openOrCreateDatabase(DATABASE_NAME, Activity.MODE_PRIVATE, null);
   (3)mSQLiteDatabase.execSQL(CREATE_TABLE);
  1. 根据你的理解,Content Provider 和 Content Resolver 两者间是什么关系?
    答:
    (1)应用程序可以通过客户端 ContentResolver 对象访问一个 Content Provider 中数据, ContentResolver 有与 Content Provider 对象中对应名称的方法(Method),调用这些方法完成基本的 “CRUD” (Create, Retrieve, Update, and Delete) 操作。
    (2)ContentResolver 对象在客户应用进程中,而 ContentProvider 对象是在数据提供者的应用中,两者配合处理进程间通讯。
    (3)ContentProvider 实际上还负责将内部数据转换成对外的表格形式,ContentProvider 可以为多个不同的 ContentResolver 提供服务。

第 8 章 Android 资源与国际化

  1. Android 中使用的资源包括哪些?
    答:在 Android 应用程序中经常使用的资源有字符串、菜单、图像、声音、视频、颜色、布局文件、样式和主题等。

  2. res/values 目录下的 strings.xml 文件中有一个标签:张三,请写出在代码中和布局中设置 TextView 对象 tv 的 Text 属性的代码。
    答:代码中:tv.setText(getResources().getString(R.string.username));
    布局中:android:text=”@string/username”

  3. 使用系统提供的颜色资源在代码中和布局中分别设置 TextView 的背景色。
    答:在布局中:android:background=”@android:color/black”
    在代码中:tv.setBackgroundColor(getResources().getColor(android.R.color.black));

简答题

  1. ListView 使用的基本步骤:
    (1)得到 ListView 类型的对象;
    (2)生成适配器对象。并设置数据;
    (3)把适配器对象设置为 ListView 的适配器;
    (4)设置监听器监听事件的发生。

  2. 简述用 SQLiteDatabase 进行数据库操作的步骤?
    (1)获取 SQLiteDatabase 对象,它代表了与数据库的连接。
    (2)调用 SQLiteDatabase 的方法来执行 SQL 语句。
    (3)操作 SQL 语句的执行结果。
    (4)关闭 SQLiteDatabase,回收资源。

  3. 简述 Android 系统中运行 service 的两种方式:
    (1)通过 Context 的 startService():访问者与 Service 之间没有关联,即使访问者退出,Service 也仍然运行。
    (2)通过 Context 的 bindService():访问者与 Service 绑定在一起,访问者一旦退出,Service 也就终止了。

选择题

  1. android 中下列属于 Intent 的作用的是(c)
    A、实现应用程序间的数据共享
    B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失
    C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带
    D、处理一个应用程序整体性的工作

  2. 在 android 中使用 SQLiteOpenHelper 这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(b)
    A、setWriteableDatabase()
    B、getReadableDatabase()
    C、getDatabase()
    D、getAbleDatabase()

  3. android 关于 service 生命周期的 onCreate()和 onStart()说法正确的是(d)
    A、当第一次启动的时候先后调用 onStart()和 onCreate()方法
    B、当第一次启动的时候只会调用 onCreate()方法
    C、如果 service 已经启动,将先后调用 onCreate()和 onStart()方法
    D、如果 service 已经启动,只会执行 onStart()方法,不在执行 onCreate()方法

  4. Android 项目工程下面的 assets 目录的作用是什么 b
    A、放置应用到的图片资源。
    B、主要放置多媒体等数据文件
    C、放置字符串,颜色,数组等常量数据
    D、放置一些与 UI 相应的布局文件,都是 xml 文件

  5. 关于 res/raw 目录说法正确的是(a)
    A、 这里的文件是原封不动的存储到设备上不会转换为二进制的格式
    B、 这里的文件是原封不动的存储到设备上会转换为二进制的格式
    C、 这里的文件最终以二进制的格式存储到指定的包中
    这里的文件最终不会以二进制的格式存储到指定的包中

  6. 下列哪项不是 Android 四大组件 ( C )
    A.Seivice B. Activity C. Handler D. Content Provider

  7. Android 是如何组织 Activity 的 ( B )
    A.以堆的方式组织 Activity B. 以栈的方式组织 Activity
    C. 以树形方式组织 Activity D. 以链式方式组织 Activity

  8. 设置 xml 布局文件中的字体大小一般用什么单位 ( c )
    A.dp B. px C. sp D. pt

  9. 关于 BroadcastReceiver 的说法不正确的是 ( B )
    A.是用来接收广播 Intent 的
    B.一个广播 Intent 只能被一个订阅了此广播的 BroadcastReceiver 所接收
    C.对有序广播,系统会根据接收者声明的优先级别按顺序逐个执行接收者
    D.接收者声明的优先级别在的 android:priority 属性中声明,数值越大 优先级别越高

  10. 在手机开发中常用的数据库是( A )
    A,sqlLite B,Oracle C,Sql Server D,Db2

  11. 使用 MediaPlayer 播放保存在 sdcard 上的 mp3 文件时(A )
    A,需要使用 MediaPlayer.create 方法创建 MediaPlayer
    B,直接 newMediaPlayer 即可
    C,需要调用 setDataSource 方法设置文件源
    D,直接调用 start 方法,无需设置文件源

  12. 能够自动完成输入内容的组件是(D)
    A,TextView B,EditText C,ImageView
    D,AutoCompleteTextView

  13. 关于 android 中播放视频的说法不对的是(A)
    A,可以使用 SurfaceView 组件播视频
    B,可以使用 VideoView 组件播视频
    C,VideoView 组件可以控制播放的位置和大小
    D,VideoView 播放视频的格式可以是 3gp

  14. 关于适配器的说法正确的有( B )
    A.它主要是用来存储数据
    B.它主要用来把数据绑定到组件上
    C.它主要用来解析数据
    D.它主要用来存储 xml 数据

  15. 在 android 中,ArrayAdapter 类是用于( A )
    A.用于把数据绑定到组件上
    B.它能把数据显示到 Activity 上
    C.它能把数据传递给广播
    D.它能把数据传递给服务

  16. 以下可以实现进程间数据通信的是( )
    A、Intent
    B、AIDL
    C、Broadcast
    D、Content Provider

0
Posted in Android

Leave a Comment:

电子邮件地址不会被公开。