《Android移动应用试题.docx》由会员分享,可在线阅读,更多相关《Android移动应用试题.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、试题一. 选择题(2X12)1. 下面哪一个不属于Android体系结构中的应用程序层A. 电话簿 B. 日历 C. SQLite D. SMS程序2. 下面哪种说法不正确A. Android应用的gen目录下的R.java被删除后还能自动生成;B. res目录是一个特殊目录,包含了应用程序的全部资源,命名规则可以支持数字(0-9)下横线(_),大小写字母(a-z , A-Z);C. AndroidManifest.xml文件是每个Android项目必须有的,是项目应用的全局描述。其中指定程序的包名(package=”)+指定android应用的某个组件的名字(android:name=”)组
2、成了该组件类的完整路径D. assets和res目录都能存放资源文件,但是与res不同的是assets支持任意深度的子目录,在它里面的文件不会在R.java里生成任何资源ID3. 在一个相对布局中怎样使一个控件居中A. android:gravity=center B. android:layout_gravity=center C. android:layout_centerInParent=trueD. android:scaleType=center4. 下面是一段生成对话框的代码,哪一行有错误?Builder builder = new Builder(getApplicationCo
3、ntext(); 1builder.setTitle(提示).setMessage(请选择); 2builder.setPositiveButton(重置, new OnClickListener() 3 4public void onClick(DialogInterface dialog, int which) 5 6Log.i(log, 重置被按了!); 7 8); 9builder.setNegativeButton(取消, null); 10builder.setNeutralButton(确定, new OnClickListener() 11 12public void onCl
4、ick(DialogInterface dialog, int which) 13 14Toast.makeText(getApplicationContext(), 确定被按了!, 15Toast.LENGTH_SHORT).show(); 16 17); 18builder.create().show(); 19A. 第1行 B. 第10行 C. 第15行 D. 第19行5. 关于Android 事件机制与事件监听,下列说法不正确的有i. View类里的event listener是一个带有回调方法的接口,当UI里的组建是被用户触发时,这些方法会被系统框架所调用ii. 来自View.OnC
5、lickListener ,当点击这个Item(在触摸模式),或者当光标聚集在这个Item上时按下“确认”键,导航键,或者轨迹球, 它会被调用。iii. 来自View.OnLongClickListener ,当长按这个Item(在触摸模式),或者当光标聚集在这个Item上时长按“确认”键,导航键,或者轨迹球, 它会被调用。iv. 来自View.OnFocusChangeListener ,当手移到或离开这个Item , 它会被调用v. 来自View.OnKeyListener,当光标移到这个Item,按下和释放一个按键的时候,它会被调用vi. 来自View.OnTouchListener,在
6、这个Item的范围内触摸的时候,它会被调用vii. 来自View.OnCreateContextMenuListener,当上下文菜单被建立时,只需短按一下,它会被调用,A. i B. i ii iv vii C. iii v vi vii D. vii6. setOnTouchEvent 设置返回值为true 和 false有何区别?A. 没有区别,都能对事件进行监听B. 设置为true时 只能在移动时获得一次监听事件,false则可以多次C. 返回true表示这个消息已经被处理结束,后续的handler不再接收到这个消息D. 设置为false是 ,在处理一次监听事件后,系统将抛弃该次事件7
7、. 下列说法哪个不正确A. 拥有android:configChanges=orientation|keyboardHidden标签的Activity在横竖屏转换时不会再执行onCreate方法B. 默认情况下对一个Activity的对象进行横竖屏切换,该对象的onCreate方法在每次切换时都会执行C. 一个Activity的对象a1上弹出了一个模拟对话框形式的Activity的对象a2,按返回键后a1执行了onStart和onResume方法,a2执行了onPause,onStop和onDestroy方法D. 一个界面上的EditText中输入文字后,再按下Home,该界面消失,等再回到该
8、界面文字内容仍在,onCreate方法也不会执行8. E/AndroidRuntime(1099): java.lang.RuntimeException: Unable to instantiate activity ComponentInfocom.test/com.test.CanvasActivitys: java.lang.ClassNotFoundException: com.test.CanvasActivitys in loader dalvik.system.PathClassLoader/data/app/com.test-1.apk这段话是程序报错在LogCat中产生的记
9、录,从中可以分析问题的原因可能在哪里?A. 程序执行CanvasActivitys的一个代码段时一个View有引用无对象B. CanvasActivitys类没有在AndroidManifest中正确申明C. 最小SDK支持版本号比运行这个程序的设备版本号还高D. CanvasActivitys是一个Activity,但没有重写它的onCreate方法9. 下列说法错误的是A. Intent起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦B. Intent 可以传递 View对象C. 对于直接Intent,Android不需要去做解析,因为目标组件已经很明
10、确,Android需要解析的是那些间接Intent,通过解析,将 Intent映射给可以处理此Intent的Activity、IntentReceiver或ServiceD. 通过Intent可以删除程序10. 这是一个资源配置文件,下面描述正确的是?A. 这个shape文件是画一个宽为5dp,高为3dp的色块B. 这个shape文件是画一个宽从5dp到3dp的等腰梯形C. 这个shape文件是画一个底为5dp高为3dp的等腰三角形D. 这个shape文件是画一条虚线,实线段5dp,间隔3dp11.下列关于Service的描述,正确的是() AServie主要负责一些耗时比较长的操作,这说明S
11、ervice会运行在独立的子线程中 B每次调用Context类中的StartService()方法后都会新建一个Service实例 C每次启动一个服务时候都会先后调用onCreate()和onStart()方法 D当调用了ConText类中的StopService()方法后,Serviece中的onDestroy()方法会自动回调12. 通过SurfaceView对象得到SurfaceHolder对象holder,调用holder的addCallback()方法,在匿名内部类中的onCreat()方法中的代码如下: Paint paint=new Paint();paint.setColor(
12、Color.Red);Canvas canvas = holder.lockCanvas();canvas.drawRect(0, 0, 360, 480, paint);holder.unlockCanvasAndPost(canvas);holder.lockCanvas(new Rect(0, 0, 250, 250);holder.unlockCanvasAndPost(canvas);holder.lockCanvas(new Rect(0, 0, 200, 200);holder.unlockCanvasAndPost(canvas);holder.lockCanvas(new R
13、ect(0, 0, 150, 150);holder.unlockCanvasAndPost(canvas);holder.lockCanvas(new Rect(0, 0, 100, 100);holder.unlockCanvasAndPost(canvas);最后显示的图形是:A. B. C. D. 二 判断题(对/错)(2X10)1. 一个Activity就是一个可视化的界面或者看成是控件的容器。()2. Intent有很长的生命周期,是没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失()3. onPause()方法在activity被暂停或收回cpu和其他资源时调
14、用,该方法用于保存活动状态的,也是对运行时数据的现场保护。()4. onDestroy是activity被干掉前最后一个被调用方法,当调用finish方法或者系统为了节省空间将它暂时性的干掉时候调用。5. 如果service已经启动,再次启动该服务时将先后调用onCreate()和onStartCommand()方法 6. 使用startService()方法启动服务后,调用者和服务间没有关联,即使调用者退出了,服务任然进行7. 当应用程序中某广播在AndroidMainifest进行注册后,即使该应用程序关闭后,也可以接受操作系统发出的广播信息8. 当Antivity的启动模式设置为Sing
15、leTop表示当该Anctivity的实例在栈顶时只会产生一个实例。9. 关于res/raw目录是会转换为二进制的格式然后原封不动的存储到设备上10. UIthread 通常就是main thread,Android启动程序时会替它建立一个MessageQueue三 问答题(10X3)1. Activity的生命周期2. android中常用的数据存储方式和怎样去实现这些存储方式3. android中有哪些常用资源文件和怎样去用这些资源文件四 编程题(10+12)所有编程题编写完毕执行一下clean操作 把工程文件复制到project文件夹下1. 编写一个小程序,可以显示实时时间,按返回时有弹出对话框提示是否退出程序,按确认后退出程序。提示:自建一个工程,包名: com.test.姓名拼音.exercise12. 编写一个小程序,按下按钮后间隔10秒自动弹出一个Toast显示当前时间,再次按下该按钮停止自动弹出Toast提示: 自建一个工程,包名: com.test.姓名拼音.exercise2
限制150内