AnjoyoAndroid04章节考试题

更新时间:2023-03-08 09:52:21 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

AnjoyoAndroid第四章考试题

一、选择题:(共20题,每题3分)

1. 下面关于Adapter描述有误的一项是( )。

A、Android有以下四种Adapter对象可供开发者使用,分别是ArrayAdapter、SimpleAdapter、SimpleCursorAdapter和自定义的Adapter。

B、Android使用了一个抽象类——BaseAdapter作为各个Adapter实体类的基类,并使用两个接口——ListAdapter和SpinnerAdapter分别作为两种类型的AdapterView——AbsListView(包含ListView和GridView)和AbsSpinner(包含Spinner和Gallery)的适配接口。

C、Android系统提供了几个默认的Adapter类,可供开发者使用,同时,开发者也可以继承Adapter类来自定义Adapter 。 D、Adapter对象在Adapter控件和数据源之间扮演桥梁的角色,它提供了访问数据源的入口,并把从数据源拿到的数据逐项加载到Adapter控件中。 2. 下列关于Adapter的继承关系描述错误的一项是( )。

A、自定义Adapter继承自Adapter。 B、ArrayAdapter继承自BaseAdapter。 C、SimpleAdapter继承自BaseAdapter。 D、CursorAdapter继承自BaseAdapter。

3. 下列关于ListView的特点描述不正确的是( )。

A、采用MVC模式将前端显示和后端数据分离。

B、ListView相当于MVC模式中的V(视图View)。

C、ListAdapter对象相当于MVC模式中的C(控制器Control)。

D、为ListView提供数据的List或数组相当于MVC模式中的M(数据模型Model)。 4. 下列关于ListView的XML属性描述错误的一项是( )。

A、在XML布局代码中将ListView的位置设为占满整个Activity,可以将ListView填充满整个Activity。

B、ListView与其它的UI控件相同,在XML布局文件中通过标签将其放入界面布局中。

C、以把ListView放在布局控件中,让其只占界面的某一部分。

D、直接让Activity继承自ListAdapter可以将ListView填充满整个Activity。 5. 下列关于四种类型的Adapter描述有误的一项是( )。

A、SimpleCursorAdapter专门用来把一个Cursor(游标)中的数据映射到列表中,Cursor中的每一条数据映射为列表中的一项。

B、SimpleAdapter比ArrayAdapter复杂,适合于每一个列表项中含有不同的子控件,只能是含有一个图片和一串文本的组合。

C、ArrayAdapter是最简单的Adapter,适合于列表项中只含有文本信息的情况,是填充文本列表最简便的一种方式。

D、自定义Adapter是完全自行定义数据的适配方式,灵活性最强,但使用起来比前三个复杂。

6. 下列关于为ListView填充数据描述错误的一项是( )。

A、ArrayAdapter是最简单的Adapter,适合于列表项中只含有文本信息的情况,是填充

7.

8.

9.

10.

11.

12.

文本列表最简便的一种方式。

B、SimpleAdapter要比ArrayAdapter复杂,适合于每一个列表项中含有不同的子控件,但只能含有一个图片和一串文本的组合。

C、自定义Adapter是完全自行定义数据的适配方式,灵活性最强,但使用起来比其它三个复杂。 D、SimpleCursorAdapter是专门用来把一个Cursor(游标)中的数据映射到列表中,Cursor中的每一条数据映射为列表中的一项。

下列关于ListView响应用户的单击事件说法有误的一项是( )。 A、ListView可以使用setOnItemClickListener()方法响应用户的单击事件。 B、在ListView的onItemClick 方法里的parent参数表示发生点击动作的ListView对象。 C、在ListView的onItemClick 方法里的view参数表示在ListView中被点击的View。 D、在ListView的onItemClick 方法里的id参数表示被点击的项在ListView中的位置,与其上的数据在数据源中的位置对应。

下列关于ListView响应用户的长按事件说法有误的一项是( )。

A、ListView可以使用setOnItemLongClickListener()方法响应用户的长按事件。 B、在ListView的onItemClick 方法里的parent参数表示发生点击动作的ListView对象。 C、在ListView的onItemClick 方法里的position参数表示被长按的列表项在ListView中的位置。 D、在ListView的onItemClick 方法里的id参数表示被长按的列表项的行id,与其上的数据在数据源中的位置对应。

下列关于ArrayAdapter描述错误的一项是( )。 A、ArrayAdapter是很便于使用的一种Adapter,它常被用来处理列表项的内容全是文本的情况。 B、ArrayAdapter是继承自BaseAdapter的一个具体的类,它使用数组填充AdapterView。 C、ArrayAdapter可以接受数组作为数据源,也可以使用List对象作为数据源。 D、ArrayAdapter只能用在仅含有文本的ListView和Spinner中。 下列关于SimpleAdapter描述不正确的一项是( )。 A、SimpleAdapter使用ArrayList形式的数据源。

B、SimpleAdapter可以为每一个列表项中包含多个不同控件的ListView填充数据。 C、SimpleAdapter只能给ListView填充数据,不可以为其它的Adapter控件填充数据。 D、SimpleAdapter填充ListView的过程就是反复使用Map中的数据填充XML布局文件中的各个控件的过程。

下列关于SimpleCursorAdapter描述错误的一项是( )。

A、Android系统中,从数据库查询到的数据都存放在Cursor或者List的对象中。 B、如果想把Cursor对象里的数据显示在ListView、Gallery等组件中,可以使用SimpleCursorAdapter来处理。

C、在SimpleCursorAdapter中,与要填充的项进行匹配的是Cursor的字段,也就是数据库中的数据字段名。

D、SimpleCursorAdapter与SimpleAdapter的用法很相似。 下列关于自定义Adapter描述不正确的一项是( )。 A、自定义Adapter可以不用继承自BaseAdapter。 B、自定义Adapter继承BaseAdapter之后,需要至少重写getCount()、getItem()、getItemId()和getView()这四个方法。

C、自定义Adapter继承BaseAdapter之后,还需实现ListAdapter和SpinnerAdapter两

13.

14.

15.

16.

17.

18.

19.

个接口。

D、ListView、Spinners、GridView和Gallery这四种控件能用自定义Adapter来填充。 下列关于ListView工作的描述错误的一项是( )。 A、当列表里的每一项显示到页面时,都会调用Adapter的getView()方法返回一个View。 B、ListView在开始绘制的时候,系统首先调用getItem (),根据其返回值得到ListView的长度。

C、Adapter对象根据ListView返回值得到的ListView长度,然后调用getView()一行一行地绘制ListView的每一项。

D、ListView中有多少项,就应该调用多少次getView()方法去绘制一项的界面。 下列关于ListView的缓存描述有误的一项是( )。

A、在ListView的缓存中Recycler是Android中专门用来处理缓存的组件。 B、ListView先通过getView()方法请求一个View,然后请求其它可见的View。

C、当列表第一项滚出屏幕,并且一个新的项从屏幕低端上来时,ListView会再请求一个View。 D、通过ListView的缓存机制,大大地减少了创建新Adapter的次数,从而提升了ListView的性能。

下列对于常用的AdapterView描述有误的一项是( )。 A、Gallery是一个显示缩略图的控件,它可以把子项显示在一个中心锁定且水平滚动的列表中。 B、GridView是一个表格显示资源的控件,其上显示的资源只能使用ArrayAdapter去填充。

C、Spinner也表现为一种列表,它的主要作用是让用户进行选择,比如一个下拉列表。 D、ListView和GridView同属于AbsListView的子类,两者具有相似性。 下列关于Spinner的描述错误的一项是( )。

A、Spinner也表现为一种列表,不过它的主要作用是让用户进行选择,比如一个下拉列表。

B、Spinner中显示的信息通常不是单一结构的,常用ArrayAdapter来填充Spinner。 C、在XML文件中先定义好要加载的数据资源,然后使用ArrayAdapter.createFromResource()方法把该资源加载给Spinner。 D、直接在Java代码中使用ArrayAdapter对象,把List中的数据资源加载到Spinner中。

下列关于Gallery描述有误的一项是( )。 A、Gallery是一个显示缩略图的控件,它可以把子项显示在一个中心锁定且水平滚动的列表中。

B、默认的Gallery是以Theme_galleryItemBackground作为背景并使用开发者提供的Adapter为其中的每一项View填充数据。

C、Gallery中的View需要使用Gallery.LayoutParams属性作为它的布局参数类型。 D、只能使用使用自定义Adapter填充Gallery。 下列关于GridView描述错误的一项是( )。 A、GridView是一个表格显示资源的控件。

B、GridView上显示的资源可以使用Adapter去填充。 C、GridView只能在一个可滚动的方向上显示资源。 D、使用BaseAdapter的子孙类可为GridView填充数据。

Android有以下哪四种Adapter对象可供开发者使用( )。

A、ArrayAdapter、SpinnerAdapter、SimpleAdapter、SimpleCursorAdapter B、ArrayAdapter、SimpleAdapter、SimpleCursorAdapter、自定义的Adapter C、BaseAdapter、SpinnerAdapter、ListAdapter、SimpleCursorAdapter D、BaseAdapter、ArrayAdapter、SimpleAdapter、自定义的Adapter 20. 下列说法错误的一项是( )。

A、常用的AdapterView有ListView、GridView、Gallery和Spinner。

B、常用的Adapter有ArrayAdapter、SimpleAdapter、SimpleCursorAdapter和自定义的Adapter。

C、ListView是比较常用的控件,它能响应用户单击事件和长按事件。

D、ListView中不管有多少项,都仅用调用Adapter的getView()方法一次去绘制每一项的界面。

二、简答题:(共5题,每题8分)

1. 请写出Android中的不少于四个Adapter控件。 2. 请写出Android中的不少于四种Adapter对象。 3. 请写出ListView的特点。

4. 请写出ArrayAdapter、SimpleAdapter、SimpleCursorAdapter和自定义的Adapter各自的

特点。

5. 请简单介绍一下ListView的缓存机制。

答案:

一、选择题: 1~5:CACDB 6~10:BDDDC 11~15:AABDB 16~20:BDCBD 二、简答题:

1. 答:ListView、Gallery、Spinners、自定义Adapter控件和GridView等。 2. 答:ArrayAdapter、SimpleAdapter、自定义Adapter和SimpleCursorAdapter。

3. 答:①采用MVC模式将前端显示和后端数据分离。②该控件不能使用ListView.add或

类似方法添加数据,需要指定一个Adapter对象,通过Adapter对象获得需要显示的数据,这个Adapter需要实现ListAdapter接口。③为ListView提供数据的List或数组相当于MVC模式中的M(数据模型Model)。④ListView相当于MVC模式中的V(视图View)。⑤Adapter对象相当于MVC模式中的C(控制器Control)。

4. 答:①ArrayAdapter:最简单的Adapter,适合于列表项中只含有文本信息的情况,是填

充文本列表最简便的一种方式。②SimpleAdapter:比ArrayAdapter复杂,适合于每一个列表项中含有不同的子控件,比如一个图片、一串文本和一个按钮的组合。③SimpleCursorAdapter:专门用来把一个Cursor(游标)中的数据映射到列表中,Cursor中的每一条数据映射为列表中的一项。Cursor常用在数据库查询中,会把查询到的若干条记录放在一个Cursor中。④自定义Adapter:完全自行定义数据的适配方式,灵活性最强,但使用起来比前三个复杂。适合于当前三个Adapter不能满足需求的情况下。 5. 答:①如果有几千、几万甚至更多的项时,其中只有可见的项存在于内存中,其它的都

在Recycler中,Recycler是Android中专门用来处理缓存的组件。②ListView先通过getView()方法请求一个View,然后请求其它可见的View。convertView在getView中是空的(null)。③当列表第一项滚出屏幕,并且一个新的项从屏幕低端上来时,ListView会再请求一个View,这时,convertView已经不是空值了,它的值是滚出屏幕的第一项,之后只需设定新的数据,然后返回convertView即可,而不必重新创建一个View。

本文来源:https://www.bwwdw.com/article/2rz3.html

Top