《Android平台开发入门》复习资料docx.docx
《《Android平台开发入门》复习资料docx.docx》由会员分享,可在线阅读,更多相关《《Android平台开发入门》复习资料docx.docx(17页珍藏版)》请在冰豆网上搜索。
《Android平台开发入门》复习资料docx
-、选择题(每题2分)
1.下列不是手机操作系统的是(D)
A.androidB・windowphoneC・IOSD・win7
2.Android是基于(B)的手机操作系统。
A.WindwosB.LinuxC.MacOSD.以上都不是
3.Android官方网站建议以(C)作为开发Android应用程序的平台。
A.VisualStudioB・FlashC・EclipseD.Photoshop
4.Android应用程序主要采用(A)语言进行开发。
A.JavaB.VBC.C++D.Ctt
5.Dalvik虚拟机、SQLite属于Android系统架构的哪一层(C)浏览器、地图程序属于Android系统架构的哪一层(A)进程管理、网络协议等属于Android系统架构的哪一层(D)
通知管理器(Notification)、视图(View)等由开发人员直接调用的API屈于Android系统架构的哪一层(B)
A.应用层B.应用框架层C.系统运行库D.Linux内核层
6.Intent传递数据吋,不能被传递的数据是(D)
A.Integer型的数据C.String型的数据
B.实现了接口java.io.Serializable的可序列化的对象D.Bitmap对象
7.android中卜列属于Intent的作用的是(C)
A.实现应用程序间的数据共享
B.是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失。
C.可以实现界而间的切换,也可以数据传递,是连接四大组件的纽带
D.处理一个应用程序整体性的工作。
8.在Activity从创建到销毁的过程中有3种生命周期,以下哪一种不属于
Activity的生命周期(B)
A.整体生命周期B.退化生命周期C.可视生命周期D.焦点生命周期
9.卜•面退出Activity错误的方法是(B)
A.finish()B.System,exit()C.onStop()D.抛出异常强制退出
10.下列哪种说法不正确(B)
A.Android应用的gen目录下的R.java被删除后还能口动生成
B.Res目录是一个特殊目录,包含了应用程序的全部资源,命名规则可以是数字(0-9).卜•划线(_)和大小写字母(a-z.A-Z)
C.AndroidManifest.xml文件是个Android项目必须冇的,是项目应用的全局描述
D.assets和res目录都能存放资源问就,但是与res不同的是,assets不会在R.java中生成任何的资源1D
11・以卜•关于android应用程序的目录结构描述中,不止确的是(D)
A.src目录是应用程序的主要目录,由Ja腹类文件组成
B.assets口录是原始资源口录,该口录屮的内容将不会被R类所引用
C.resg录是应用资源目录,该目录中的所有资源内容都会在R类所引用。
D.AndroidManifest.xml文件是应用程序目录清单文件,该文件由ADT自动生成,不需耍程序员手动修改。
12.在Android项目工程中,图片资源文件一般放在哪个目录下(D)
在Android项口工程屮,值资源文件一•般放在哪个口录下(B)
在Android项目工程中,布局资源文件一般放在哪个目录下(C)
A.res/rawB・res/valuesC・res/layoutD.res/drawable
13.关于AndroidManifest.xml文件,以卜-描述错误的选项有(B)
A.在所有的元索中只有〈Manifest〉和Qpplication〉是必须的,且只能出现一次。
B.处于同一个层次的元素,不能随意打乱顺序
C.元素屈性一般是可选的,但是冇些屈性是必须设置的
D.对可选的屈性,即使不写,也冇默认的数值项说明
14.Android项目工程卜•面的assets目录的作用是(B)
A.放置应用到的图片资源。
B.主要放置多媒体等数据文件
C.放置字符串,颜色,数组等常量数据
D.放置一些与U1相应的布局文件,都是xml文件
15.在Android操作系统中门带的数据库是(A)
A.SQLiteB.MySqlC.OracleD.SQLServer
16.关于SQLite数据库,不正确的说法是(C)
A.SqliteOpenHelper类主要是用来创建数据库和更新数据库
B.SqliteDatabase类是用来操作数据库的
C.在每次调用SqliteDatabase的gctWritab1eDatabase()方法时,会执行
SqliteTOpenHelper的onCreate方法
D.当数据库版本发生变化的时候,可以自动更新数据库结构
17・如果将一个TextView的android:
layoutheight属性值设置为wrap_content,那么该组件将是以下哪种显示效呆(D)
如果将一个TextView的android:
layout_hcight属性值设置为fill_parcnt,那么该组件将是以下哪种显示效果(C)
如果将一个TextView的android:
layoutwidth属性值设置为wrapcontent,
那么该组件将是以下哪种显示效果(B)
如呆将一个TextView的android:
layout_width屈性值设置为fill_parent,那么该组件将是以卜•哪种显示效果(A)
A.该文本组件的宽度将填充父容器宽度
B.该文木组件的宽度仅自动适应组件内文字的宽度
C•该文本组件的高度将填充父容器高度
D.该文本组件的高度仅自动适应组件内文字的高度18•关于Android布局中常用的长度/大小单位的描述不止确是(C)
A.dp是基于屏幕物理密度的单位,不依赖于设备
B.sp类似于dp,主要用于字体大小的显示
C.px是像索单位,在不同的设备上显示效果相同,因此推荐在布局中使用该单位
D.在设置空间长度等相对距离时,推荐使用dp单位,该单位随着设备密度的变化1何变化
19.在线性布局(LincarLayout)标签中有且仅放置了两个<Button>标签,分别
标志位Button1和Button2,并11是水平线性布局,若Button1的layoutweight属性值为2,Button2的layout_weight的属性值为3,那么Buttonl和Button2
会各占屏幕宽度的(B)的比例。
B•代
C.二、二
23
D.二、二
32
20.以下哪个视图属于视图容器类(
C)
A.Button
B•TextView
C.GridView
D・EditText
以下哪个视图属于视图容器类(
D)
A.Button
B•TextView
C.ImagcVicw
D.ListVicw
21.线性布局(LinearLayout)分为水平线性布局和垂直线性布局,在布局文件中通过设置android:
orientation的屈性值分别得到,以下(C)的屈性值对应着水平线性布局。
线性布局(Lineeirl血yout)分为水平线性布局和垂直线性布局,在布局文件中通过设置android:
orientation的属性值分别得到,以下(B)的属性值
对应着水平线性布局。
A.centerB.verticalC・horizontalD.margin
22.在3D绘图中,设一个opcnGLES中的GL10类的对象gl,以下进行旋转变换设置的方法的是(C)
在3D绘图中,设_个openGLES中的GL10类的对象gl,以下进行平移变换的方法的是(A)
在3D绘图中,设一个openGLES中的GL10类的对彖gl,以下将变换矩阵重
置为单位矩阵的方法的是(B)
A.gl.glTranslatef()B.gl.glLoadIdentity()C.gl.glRotatef()D.gl.glDrawArrays()
23.XML彳j局文件中,leiyout_width屈性的屈性值不是(D)
A.matchparentB.fi1lparentC.wrapcontentD.matchcontent
24.XML布局文件中,android:
gravity属性的属性值不是()
A.centerverticalB.center_top
C・center|bottomD.center_horizontal
25.添加选项菜单的方法Menu,add有4种重载的形式,其中一个原型:
PublicMenuTtemadd(intgroupTd,intitemTd,intorder,inttitleRes)中的有四个参数,以下对参数的描述错误的是(C)
A.groupld:
菜单项的分组ID,参数值可以是负整数、0和正整数
B.itemld:
当前添加的菜单项的ID,参数值可以是负整数、0和正整数
C.order:
菜单项显示的顺序,参数值可以是负整数、0和止整数
D.titleRes:
菜单标题的字符串资源ID
26.以下对带复选框或选项按钮的菜单的描述正确的是(B)
A.添加一组复选框只能在groupId相同的那些菜单项实施
B.添加一组复选框只需要对每一个菜单项使用setCheckable方法
C.添加一组选项按钮可以在不同的groupld的那些菜单项中实施
D.添加一组选项按钮需要对每一个菜单项使用setGroupCheckable方法
27.以下值资源中,
属于尺寸资源的标签是(
B
)
以下值资源中,
属于整数资源的标签是(
A
)
以下值资源屮,
屈于布尔资源的标签是(
C
)
以卜•值资源中,
屈于颜色资源的标签是(
D
)
A.integer
B.dimenC.bool
D.color
28.下列方法中哪个是属于Activity类屮用于创建选项菜单的方法(A)
下列方法中哪个是属于Activity类中用于创建上下文菜单的方法(C)
A.onCreateOptionMenu()B・onStartContextMenu()
C.onCrcatcContcxtMcnu()D.OnStartOptionMenu()
29.在一个线性布局中,如果要为一个Button控件屮显示的文字居屮,下而哪个标签及其属性设置是止确的(C)
A.〈LinearLayoutandroid:
gravity=〃center〃>
B.layout_gravity二〃center〃>
C・gravity二〃center"〉
D・layout.gravity="center">
30.以卜•对android:
layout_grivatyandroid:
gravity的描述正确的是(D)
A.android:
layout_grivaty和ndroid:
grivaty属性设置都表示当前视图相对于其父视图的位置
B.android:
layout_grivaty和ndroid:
grivaty属性设置都表示当前视图内的内容或控件相对于当前视图的位置
C.android:
grivaty属性设置表示当前视图相对于其父视图的位置,而android:
layout_grivaty属性设置表示当前视图内的内容或控件相对于当前视图的位置
D.android:
layout_grivaty属性设置表示当前视图相对于其父视图的位置,ifijandroid:
grivaty屈性设置表示当前视图内的内容或控件相对于当前视图的位置
31.以下是处理窗口屏幕触摸事件的方法是(B)
A.OnKeyLongPressB.OnTouchEventC.OnKeyDownD.OnKeyUp
32.以下是处理窗口获得焦点事件的方法是(B)
A.OnBackPressedB.OnTouchEvent
C.OnWindowFocusChangcdD.OnDispatchKcyDown
33•在图像资源中,用于创建图像级别资源的标签是(C)
在图像资源屮,用于创建淡入淡出资源的标签是(D)
A.Cross-fadeB.levelC.level-listD・transition
二、填空题(每空格1分)
1.Android应用程序的四大组件分别是:
窗口(Activity)组件、服务(Service)纟甘件、广播接受者(Broadcastreceivers)纟件、内容提供者(contentProvider)组件.
2.在动眩资源屮,补间动画可以分为移动补间动画、透明补间动画、缩放补间动画和旋转补间动画。
3.屏幕密度是指屏幕每英寸包含的物理像素点的个数,通常简称为
dpi(dotsperinch),dp是与屏幕像素无关的单位,px是像素的单位,dip、dp、px之间的运算关系是一px二dp*(dpi/160)o
4.在3D绘图中,己知一个空间的顶点序列&££££),设一个openGLES中的GL10类的对象gl,其中的绘图方法gl.glDrawArrays(***,0,3)调用该顶点序列绘图,每三个点绘制一个三角形,星号部分的参数需要引入系统设定好的参数用于设定顶点的选取顺序,如果是GL10.GL_TRIANGLE_FAN的绘制的三角形是
、P\P£,\PRP、、而GL10.GLTRIANGLEFAN的绘制的三角形是
巧心坐叭理PR
5.图像状态(State)资源所使用的标签<selector>,在其屮有三个状态设置,
用三个<item>标签分别进行设置,其中按卜.状态的属性设置是android:
(state_pressed)=Mtrue?
,获得焦点状态的属性设置是android:
(state_focused)=,true,,»最后一个是默认状态。
6.图形(Shape)资源所使用的标签是<shape>,其中需要使用android:
shape属
性指定绘制的形状,android:
shaDe—'rectangle”表示矩形、android:
shape=^^oval”表示表示椭I员1、android:
shape=?
line表示直线、android:
shape=,
ring‘‘表示圆环。
7.使用Java代码创建对话框吋,AlertDialog类可以为对话框设置最多三个按
钮,使用的方法分别是setPositiveButton、
setNegativeButton、_setNeutralButton。
三、简答题(每题5分)
1.Activity作为Android应用程序的四大组件之一,在Activity从创建到销毁的过程中需耍在不同的阶段调用7个生命周期方法,分别是:
onCrcatc(),
onStart(),onResume(),onPause(),onStop(),onRestart(),onDestroy()。
以上7个方法通常在4个阶段按一定的顺序进行调用,这4个阶段及其调用的方法分别是什么?
(5分)
答:
(1)开始Activity阶段:
在这个阶段依次执行三个生命周期方法,分别是onCrcatc、OnStort、onResumeo
(2)Activity失去焦点阶段:
如果当前的Activity失去焦点,这一阶段会依次执行onPause和onStop方法。
(3)Activity重新获得焦点:
若Activity重新获得焦点,会依次执行3个生命周期方法,分别是onRestart、onStart^onResume。
(4)关闭Activity阶段:
若要关闭当前的Activity需要依次执行3个生命周期方法,分别是onPause>onStop和onDestroyo
2.Activity作为Android应用程序的四大组件之一,在Activity从创建到销毁的过程中需要在不同的阶段调用7个生命周期方法,它们分别是什么?
答:
onCreate(),onStart(),onResume(),onPause(),onStop(),onRestart(),onDestroy()。
3.Android的5大布局分别是什么?
同吋描述中文名称和对应英文标签。
(5分)FrameLayout(框架布局),LinearLayout(线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)
4.Android的数据存储方案有哪些?
(5分)
SharePreferences存储、文件存储、SQLite存储、json格式存储、ContentProvider存储
四、程序题(毎题10分)
1.已知一个Android应用程序的主窗口布局文件屮添加了一个Button控件,控件的资源ID屈性设置为:
android:
id=H@+id/shoi^Daten
在主窗II类ShowDate中通过实现单击事件的接II来处理木Button控件的单击事件。
请完善以下程序的代码:
publicclassShowDateextendsActivityimplementsOnClickListenet
{
©OverrideprotectedvoidonCreate(BundlesavedinstanceState){super,onCreate(savedInstanceState);
setContentView(R.layout,activity_show_date);
ButtonbtnShowDate二(Button)findViewByld(R.id.showDate);
btnShowDate•setOnClickListener(this);
}
©Override
publicvoidonClick(Viewv){switch(v.gctld()){
caseR.id.showDate:
{
//显示El期的实现
break;
}
}
}
2.已知一个主窗口的布局文件中有一个Button控件,点击该Button控件之后能够打开一个新的窗口,并传递一个数据到新的窗口的TextView控件上显示。
请完善以卜•程序的代码:
(1)主窗口布局文件的Button控件属性设置: