版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Intent的Component属性的作用是什么,如何定义此属性?
componert(组件),指定Intent的的目标组件的类名称。通常Android会根据指二ent中包含的其它属性的信息,比如action、data/type、
category进行查找,最终找到•个与之匹配的目标组件。但是,如果component这人属性有指定的话,将直接使用它指定的组件,而不再执行
上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。
Component属性的作用是用来指定Intent的m标组件的类名称。如果Component这个属性被指定了的话,Intent的其它属性都是可选项,
Android会直接使用Component指定目标组件,而不再执行其它查找过程。
在使用时,需要先创建一个ComponentName对象,然后将它设置成Intent对象的Component的属性。通过setComponent()setClassO和
setClassNameO三种方法都可以设置组件的名称,通过getComponentO方法则可获得设置项。
2.发送广播时,可以通过sendCatago巧Broadcast。方法将Intent对象发送出去().(错)
3、Andrcid是什么?一种操作系统
4.下面关于Android加01的进程和Linux的进程,应用程序的进程说法正确的是()
DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都招有一个独立的Dalvik虚拟机实例。而每一个DVM都是在
Linux中的一个进程,所以说可以认为是同一个概念。
5、Andrcid操作系统最早由哪个公司研发?()Android公司
6.下列中不属于手持设备的是()机顶盒
7、下列不是手机操作系统的是()。WindovsVista
8、到目前为止,Android操作系统的最高版本是哪个?()AndroidL
9、安装AndroidSDK时,可以通过()在线安装或离线安装。Androidsdkmanager
10、开发Android应用程序时,一般使用的计算机语言是()0JAVA
11,E/AncroidRuntime(1099):java.lang.RuntimeExcpption:Unabletoinstantiateactivity
ComponcrtInfo(com.test/com.test.CanvasActivitys):java.lang.ClassNotFoundException:com.test.CanvasActivitysinloader
dalvik.system.PathClassLoader[/data/app/coin.test-1.apk]这段话是程序报错在LogCat中产生的记录,从中可以分析问题的原因可能在
哪里?()
Canva类没有在AndroidManifest中正确申明sActivitys
12.对于直接Intent,Android不需要去做解析,因为目标组件已经很明确,Android需要解析的是那些间接Intent,通过解析,将Intent映
射给可以处理此Intent的Activity^IntentReceiver或Service(对)
Intent可以传递View对象(错)
Intent起着一个媒体巾介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦(对)
通过Intent可以删除程序(对)
13.下面退出Activity错误的方法是()。System.exit()
14.当启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行的回调函数是()。startActivityResultO
15、这是一个资源配置文件,下面描述正确的是?()这个shape文件是画一条虚线,实线段5dp,间隔3dp
16.Toasttoast=newToast(this);toast.setText("今天天气不错\n哈哈");toast.show();上面代码的执行结果是什么()°
代码会抛出异常,因为new出的Toast对象不能再使用setText方法来设置提示框文本
17、setOnTouchEvent设置返回值为true和false有何区别?()
返回tru9表示这个消息已经被处理结束,后续的handler不再接收到这个消息
18、下列哪个可做EditTcxt编辑框的提示信息()。android:hint
19、使边度条变横向的系统样式是()©android:style/Widget.ProgressBar.Horizontal
20、关于Android事件机制与事件监听,下列说法不正确的有()。
i.View类里的eventlistener是一个带有回调方法的接口,当UI里的组建是被用户触发时,这些方法会被系统框架所调用;(对)
ii.来自View.OnClickListener,当点击这个Item(在触摸模式),或者当光标聚集在这个Item上时按下“确认”键,导航键,或者轨迹球,
它会被调用;(对)
iii.来自View.OnLongClickListener,当长按这个Item(在触摸模式),或者当光标聚集在这个hem上时长按“确认”键,导航键,或者轨
迹球,它会被调用;(对)
iv.来自7iew.OnFocusChangeListener,当手移到或离开这个Item,它会被调用(对)
v.来自Yiew.OnKeyListener,当光标移到这个hem,按下和释放一个按键的时候,它会被调用;(对)
vi.来自7iew.OnTouchListener,在这个Item的范围内触摸的时候,它会被调用;(对)
vii.来自View.OnCrealeConlexlMenuLislener,当上下文菜单被建立时,只需短按一下,它会被调用。(错)
21.关于对话框,下面说法正确的是()°对话框的父类不是View
22.创建一个提示对话框,应创建卜面哪种对话框实例()。AlertDialog
23、在AlertDialog中,以下哪个方法是用于取消的()。setNegativeButton
24.在android中使用Menu时可能需要重写的方法有()。(1)onCreateOptionsMenu()(3)onOptionsItemSelectedO
25.键盘事件处理方法中,以下哪个方法是用来处理键盘按键的释放事件的()。keyReleased(intkeyCode)
26.下面Android的存储方式中,除SharcdPrcfercnces外还有哪种方式是不可以将数据在不同应用间数据共享的()>Files
27、当使用文件存储的时候,默认创建的文件会放在什么位置()oapp
28、关于SharedPreferences和文件存储教据描述正确的是()。使用文件存储需要创建文件,而SharedPreferences的存储方式自动
创建xml文件
29、使用SharedPreferences进行数据存储的时候,下面哪个方法是不参与的()«edit()
30、使用SharedPreferences存储数据时,会创建一个什么类型的文件来进行数据存放()。.xm]文件
31、在程序中,使用SD的文件需要使用以下哪些权限()。android,pemission.WR1TE_EXTERNAL_STORAGE
32.下面哪种不是Android的存储方式()。ContcntProvidcr
33.通过SharedPreferences保存的数据存储在什么文件夹下()。sharedprefs
34、对于一个己经存在的SharedPreferences对象setting,想向其中存入一个字符串"person",setting应该先调用什么方法()。
edit()
35.下列说法哪个不正确()。
一个Activity的对象al上弹出了一个模拟对话框形式的Activity的对象a2,按返回键后al执行了onStart和onRes」me方法,a2执行了
onPause,onStop和onDestroy方法;(错)
拥有android:configChanges=*orientationksyboardHidden*标签的Activity在横竖屏转换时不会再执行onCreate方法;(对)
默认情况下对一个Activity的对象进行横竖屏切换,该对象的onCreate方法在每次切换时都会执行:(对)
一个界面上的EditText中输入文字后,再按下Home,该界面消失,等再回到该界面文字内容仍在,。nCroate方法也不会执行。(对)
36、下面布局中,哪个布局会把控件放在左上瓶当添加新的控件的时候,将殁盖在前一个控件的上层,并且不能设计控件的位置()。
FrameLayout
37、以下有关RelativeLayout说法正确的是()。这种布局适合横竖屏切换比较频繁的应用
38、关于RelativeLayout布局中,下面对属性描述不相符合的是()。
android:layoutjnarginLeft="40px"表示当前拄件左边空出40像素的空间:
android:layoui_belo-"@id/aclock"表示当前控件放置于引用名为aclock的控件的下方
android:layout_centerInParent=*true*表示当前控件放置于父控件的横向和纵向的中央位置;
android:layout_alignParentTop="@id/mtop"表示当前控件和引用名为mtop的父控件顶端对齐(不符合)
39、关于RelativeLayout描述正确的是().该布局为相对布局,其中控件的位置都是相对位置。
40、在RelativeLayout布局中,有•个id为entry的EditText,目前有一个Button想放置在其左边,应为Button指定什么属性设置()。
androidJayout-toLeftOf^^id/entry^
41.在一个相对布局中怎样使一个控件居中()(android:layout_centerInParent=*true*
42.在表格布局中,android:collapseColumns="1,2”的含义是:()在屏幕中,不管是否能都显示完,折叠L2列
43.绝对布局中,android:layouts的含义有1)以手机左上为原点,组件显示到屏幕巾的横向坐标值。
44、简述开发手机联盟?
开放手机联盟(OHA,OpenHandsetAlliance,)是美国Google公司与2007年11月5日宣布组建的一个全球性的联盟组织,网址为
http:/Aw.openhandsetalliance.com。这一联盟将会支持Google可能发布的手机操作系统或者应用软件,共同开发名为Android的开放源
代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商等几大类,目前联盟成员数量已经达到了8C家。
45.以下哪一个类可以实现广播接收的功能()oBroadcastReceiver
46.Andrcid系统有哪些特点?
(1)应用框架可以重复使用,其组件也可以更换;(2)Dalvik虚拟机针对移动设备进行了优化;(3)优化的图形能力支持2D/3D图形(OpenGL
ES1.0):(4)集成了基于开源呢bKit引掣的浏览器;(5)采用SQLile实现结构化数据存储;(6)多媒体支持多种音频、视频格式;(7)
GSMTelephony(hardwaredependent);(8)支持蓝牙Bluetooth,3G和WiFi;(9)支持照相机、GPS、指南针和加速度仪等传感器硬件;
(10)丰富的开发环境,包括模拟机、调试工具、内存运行检测,以及为EclipseIDE所写的插件。
47、在AndroidManifest.xml中注册一个广播,需要使用什么标签()。<receiver>
48、定义广播需要重写父类中的什么方法()。onCreate
49、在程序中,发送广播的方法是以下哪一个()。sendBroadcast
50、定义一个广播,需要继承哪个类(BroadcastReceiver)
51.简述Android应用程序的组成。
52、一般来说,Android程序包含如下主要的组件类:活动(Activity);用于表现功能服务(Service);相当于后台运行的Activity广播接收
器(BroaicastReceiver)用于接收广播意图;Intent用于连接以上各个组件,并在其间传递消息;ContentProviders实现不同组件
之间的数据共享;View提供了可视化界面的展示。
53、Dalvik虚拟机与Sun公司定义的标准虚拟机(JVM)有何不同?
54、Dahik和JVM的首要差别是Dalvik基于省存器而JVM基于栈,基于寄存器的虚拟机对于更大的程序来说,在它们编译的时候,花费的时
间更短;(2)Dalvik主要是完成对象生命周期管理,堆栈管理,线程管理,安全和异常管理,以及垃圾回收等等重要功能;(3)Dalvik负责
进程隔离和线程管理,每一个Android应用在底层都会对应一个独立的Dalvik虚拟矶实例,其代码在虚拟机的解释下得以执行;(4)不同于
JVM运行Java字节码,Dalvik虚拟机运行的是其专有的文件格式dex,dex文件格式可以减少文件整体尺寸,提高I/O操作的类兖找速度;(5)
所有的Android应用的线程都对应一个Linux线程,虚拟机因而可以更多的依赖操作系统的线程调度和管理机制。
55、请读一下Android系统的架构
Android系统采用了分层架构,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
54、Andtoid开发环境搭建需要哪些主要步骤?
安装Java安装Eclipse安装AndroidSDK安装Eclipse插件ADT
55.Windows环境下如何检测已经安装成功Java?
写一个简单的java程序来测试JDK是否己安装成功:
publicclassHelloWorld(
publicstaticvoidmain(String[]args){
System,out.printIn('Helloworld!*);
)
)
将以上代码保存为文档名为HelloWorld.java的文档。打开命令提示符窗口,进入到HelloVorld.java所在目录,健入下面的命令:
javacHelloWorld.java
javaHelloWorld
如果屏幕如图,能够正确输出且不提示错误,表示JDK开发环境配置完成。
56.什么是AVD,有哪些特点?
AndroidVirtualDevice是一个经过配置的模拟器,可以模拟显示屏幕的大小、屏喜分辨率、触摸屏、轨迹球、键盘、GFS、声音播放、SD卡
支持,斯区大小等。AVD也存在着缺点,不能模拟重力感应、爰克风等一些硬件设备,因此有时候也需要实体手机上运行和测试Android应
用程序。
57、什么是ADT?
AndroidDevelopmentToolsplugin(ADT)是使用Eclipse进行Android移动应用开发的一个方便的开发、仿真测试平台。
59、58、在手机的实机上进行开发调试需要在手机上如何设置?
60、在于机上进行开发调试需要在手机上进行没置,选择设置一应用程序-开发-USB调试,之后USB连接开发计算机才能进行开发调试。
Activity,intent、Service和BroadCastReceiver之间是什么关系
60、Intent的Action、Category属性的作用是什么?
Action属性主要用来定义Intent要执行的抽象动作,它是一个字符串。使用时只需在程序中定义,并在要访问组件的〈irlcnt-filter…/〉子
元素中声明就可以使用了。Categ。”属性是对Action定义动作的补允,也是一个普通的字符串,通常两者结合使用。
在文件AndroidManifest.xml里,〈Activity”。/〉元素中所配置的子元素〈intent-filter…的作用就是用于指定该Activity可响应的
Intento
61.Intent的Data、Type属性的作用是什么?
Intent的Data属性的作用是向Action属性提供操作的教据。Data属性接受一个Ur:对象,此对象可以决定所要操作数据的类型及数据的具体
值。
可以通过设置Type属性来显式指定特定类型数据(MIME)。一般Intent会根据数据本身对其数据类型进行判定,但是如果使用Intent的Type
属性进行设置,可以实现强制显式指定的类型而不再进行推导。
62.简述Intent的功能与作用。
Intent是Android中各种组件之间传送信息的“信使”。中文里Intent有“意图、目的”的意思,在这里仍兼有这样的含义,因为在组件之
间导航的过程中,我们也需要使用Intent将意图一并传递过去。上一章中,在一个Activity里激发另一个Activity的例子中就体现了Intent
的功能。
使用Intent的好处就是应用程序可以启动只具有某种特征的的组件•,而不必指定某个具体的组件。Intent中可以封装不司组件之间进行导航
的意图。这些意图需要通过Intent的属性来表现。
63.Inter.t的实现策略分为几种类型,请分别叙述。
Intent的实现策略即指Intent寻找组件的方法。这种策略分为两种:一种是直接Intent,也称为显式Intento另一种是间接Intent,也
称为隐式Intent。
直接Intent方式需要通过指定Intent的Component属性(调用setComponent(ConiponentNaine)或者setClass(Context,Class)来指定)
来实现。这样应用就会对应的启动所指定的具体组件类。在以上对Intent的Component属性的介绍中就说明过。这种策略主要在源组件知
道E标组件名称的情况卜使用。间接Intent策略中没有指定Component属性的Intent,寻找组件需要通过〈intent-filter…/〉子元素来
实现。这就要求Inlenl中包含足够的信息,这样系统才能根据这些信息,在所有的可用组件中,确定出满足Inlenl的组件。
64、Android系统提供的Action常量有哪些,如何使用。
Action常量常量值(字符串)动作说明
ACTIONCALLandroid,intent,action.CALL呼叫指定用户
ACTIONEDITandroid,intent,action.EDIT对于指定数据进行编辑
ACTION_VIEWandroid,intent,action.VIEW向用户显示指定数据
ACTIONPICKandroid,intent.action.PICK从列表中选择并返回某项目
ACTIONJIALandroid,intent.action.DIAL显示打电话面板,可以实现紧急呼叫
ACTION_SENDandroid,intent,action.SEND向他人发送数据(短信)
ACTIONJNSH'ERandroid.intent.action.ANSWER应答电话
65.如何在程序清单文件AndroidManifest.xml中配置Activity?
对于应用程序中的短一个Activity我们都需要在程序清单文件AndroidManifPSt,xml中进行配置,这样才能有机会运行。这种配置也是非
常简单的,方法就是在程序清文件的〈application…/〉元素中添加〈Activity…/>子元素即可。添加时一般要注明该Activity的以下三个属性:
「"5??naie????指明要配置的Activity的实现类??
」??「「????icon????指明要配置的Activity的图标??
」??」??????label????指明要配置的Activity的标签??
在文件AndroidManifest.xml中我们除了要配置每一个Activity外,还需进行子元素〈intent-filter…/〉的配置,该元素用于指定
Activity可响应的Intent。对于每一个应用程序来说,无论它是由几个Activity组成,但只有一个Activity是它的人匚。到底哪一个是入口
的Aclivily,这得由清单文件中的子元素〈inlenl-filler”/〉来决定。如果想指定荚个Aclivily为程序入口,这时需在其对应的子元素
<1他6联-行116广”/》中必须具备如下属性:
(actionandroid:nanie=*android.intent.action.M.AIN*/>
(categoryandroid:name=*android.intent,category.LAUNCHER*/>
66.介绍与Activity生命周期相关的回调方法的功能及使用方法。
与Activity生命周期相关的回调方法主要有以下七个:
(1)onCreateO:当创建一个Activity时,系统会回调onCreateO方法进行初始化设置,如创建视图、绑定数据至列表。
(2)onStartO:当一个Aclivily开始执行时此方法被回调,这时的Activity是可见的,会紧跟在onCreateO方法后面执行。
(3)onRcsumeO:当一个Activity真正开始运行或重新恢复时被回调,此时会获得装点。
当一个Activity运行时,如果用户又激活了另一个Activity,这时第一个Activity将会被暂停。在第一个Activity在没有被杀死的情况下,
以后又有了重新运行的机会,那么就会直接调用onResumcO方法将其恢复。
(4)onrause():暂停Activity时被回调,
如果在一个Activity运行时,用户乂激活了另一个Activity,这时将会调用第一个Activity的onPauseO方法将其暂停,在Activity的状态
变换过程中onResumeO和。nPauseO方法经常被调用,因此在使用中应使用简单高效的代码。
(5)onStopO:停止Activity时被回调。
如果在一个Activity运行时,用户又激活了另一个Activity,而且第一个Activity很久都没有得到再次运行机会,就会调用onStopO方法将
第一个Activity停止。
(6)onRcStartO:在Activity从停止状态转换到活动状态前,回调该方法。
当一个处于停止状态的Activity又获得了用户输入焦点,就会调用onRestartO方法,重新开始执行这个Activity。
(7)onDcstroy():在销毁Activity前,即进入非活动状态前,回调该方法。
67、Activity在其生命周期中会处于哪几种状态?
一个Aciivily在其生命周期中会在四个重要状态间进行转换。下面分别说明各状态:
(1)活动状态,处于该状态时,Activity位于前台,用户可见且可获得焦点;
(2)暂停状态,处于该状态时,该Activity仍可见,但失去焦点,其它Activity位于前台;
(3)停止状态,处于该状态时,Activity不可见且失去焦点;
(4)销毁状态,处于该状态时,Activity被系统或进程结束。
68、如何将一个Activity设置成窗口的样式。
在AndroidManifest.xml中定义Activity的地方添加:
aneroid:theme二"Android:style/Theme.DialogM或
android:theme=M@android:style/Theme.TranslucentM就变成半透明的
69、使用资源包括哪几种方法?
(1)在代码里使用资源类;⑵在代码里调用资源类并实例化;⑶从其他资源类里引用。
70、谈谈android中常用的几种布局。
在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout(线性布局),AbsoluteLayout(绝对布局),
RelativeLayout(相对布局),TableLayout(表格布局)»
(DFrameLayout框架布局,放入其中的所有元素都被放置在最左上的区域,而且旗为这些元素指定一个确切的位置,下一个子元素会重叠
覆盖上一个子元素,适合浏览单张图片。
⑵LinearLayout线性布局,是应川程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,每个子组件都是以垂直或水平的方式
来定位(版认是垂直)。
(3)AbsoluteLayout绝对定位布局,采用坐标轴的方式定位组件,左上角是(0,0)点往右x轴递增,往下Y轴递增,组件定位属性为
android:layout_x和android:layout_y来确定坐标。
(4)RelativeLayout相对布局,根据另外一个组件或是顶层父组件来确定下一个组件的位置。和CSS里面的类似。
(5)TableLayout表格布局,类似Html里的Table.使用TableRo谭来布局,其中TaKeRo谭代表一行,TableRow的每一个视图组件代表一个单元
格。
71、android中常用的数据存储方式有哪些?
常用的数据存储方式:SharePrcfercnco存储、File存储(分为手机内存存储和SD卡存储)、SQLite数据库存储和网络存储。
72.一个Activity就是一个可视化的界面或者看成是控件的容器。(对)
73、Intent有很长的生命周期,是没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失。(错)
74.当Antivity的启动模式设置为SingleTop表示当该Anctivity的实例在栈顶时£会产生一个实例。(对)
75.。肝讥se()方法在aclivily被暂停或收回epu和其他资源时调川,该方法用于保存活动状态的,也是对运行时数据的现场保护。(对)
76、onDcstroy是activity被结束掉前最后一个被调用方法,当调用finish方法或者系统为了节省空间将它暂时性的结束掉时候调用。(对)
77、不是所有的Activity都有自己的生命周期。(借)
78、onPause()是service的生命周期方法(错)
79、如果service已经启动,再次启动该服务时将先后调用onCreateO和onStartCommandO方法。(错)
80、利用HltpURLConnection的.getlnpuiStreamO方法得到的是字符流。(错)
81.程序中使用http协议从网上下载文件时,无需设置访问网络的权限。(错)
82.使用我arlServiceO方法启动服务后,调用者和服务间没有关联,即使调用者退出了,服务任然进行。(对)
83.当应用程序中某广播在AndroidVainifest进行注册后,即使该应用程序关闭后,也可以接受操作系统发出的广播信息,(对)
84、UIthread通常就是mainthread,Android启动程序时会替它建立一个MessageQueue。(对)
85.广播接收器可以在Activity中单独注册与注销。(对)
此J播按收器只能在配置文件中注册。(错!
87>对下面代码:notification.vibrate=nevlong[]{100,200,100,500),其中notification是通知管理器对象,表示我们对Notification
设置了震动,并且是100ms延迟后,震动200ms,然后停止100ms,再震动500ms(对)
88、使用Notification时,需要发送广播实现notify。(错)
89、在AndroidManifest.xml中注册广播,需要使用标签。(对)
90、有2种方式注册BroadcaslReceiver的方法,一是静态的在AndroidManifest.xml中注册,二是动态的在代码中注册。i)(对)
91.如果需要一个通知立即显示,那么在构造Notification对象的时候,需要在构造函数的第三个参数中传递newCalendar。的值(错)
92.取消注册BroadcastReceiver,调用Context.unregisterReceiver()方法(对)
93.编写用Intent实现的用户登录程序。
要求:在第一个界面上输入用户名和密码,在第二个界面上显示前一界面中输入的用户名和密码。
MainActivity.java:
packagecom.example,androidintent;
importendroid.os.Bundle;
importandroid.app.Activity;
importandroid,content.Context;
importandroid,content.Intent;
importandroid.view.View;
importandroid,view.View.OnClickListener;
importandroid.widget.Button;
importandroid,widget.EditText;
importandroid,widget.TextView;
publicclassMainActivityextendsActivity(
privateTextViewuser,pass;
privateEditTextusername,password;
privateButtonloca;
©Override
prctectedvoidonCreate(BundlesavedlnstanceState);
super.onCreate(savedlnstanceState);
setContentView(R.layout.activitymain);
user=(TextView)findViewByld'R.id.user);
pass=(TextView)findViewByldjR.id.pass);
username=(EditText)findViewById(R.id.username):
password=(EditText)findViowById(R.id.password);
loca=(Button)findViewById(R.id.loca);
loca.setOnClickListener(newMyButtonListenerO);
(
classMyButtonListenerimplementsOnClicklistener{
©Override
publicvoidonClick(Viewv){
Stringtxl=username.getText().toStringO;
Stringtx2=password.getTextO.toStringO;
Intentintent=newIntent();
intent.putExtra(*txT,txl);
intent.putExtra(<tx2*,tx2);
intent.setClass(MainActivity.this,OtherActivity.class);
MainActivity.this.startActivity(intent);
)
}
)
OtherActivity.java:
packagecom.example,androidintent;
importandroid.app.Activity;
importandroid.app.Activity;
importandroid,content.Intent;
importandroid.os.Bundle;
importandroid,view.View;
importandroid.widget.TextView;
publicclassOtherActivityextendsActivity(
privateTextViewtel,te2,te3,te4;
©Override
protectedvoidonCreate(BundlesavedlnstanceState)(
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
Intentintent=getlntentO;
Stringvaluol=intent.getStringExtraCtxr);
Stringvalue2=intent.getStringExtra(*tx2*);
tel=(TextView)findViewById(E.id.tel);
te2=(TextView)findViewById(R.id.te2);
te3=(TextView)findViewById(R.id.te3);
te4=(TextView)findViewByld®.id.te4);
te2.setText(valuel);
te4.sotText(value2);
I
)
activitymain,xml:
<LinearLayoutxm1ns:android-wh11p://schenas.android,com/apk/res/android*
xmlrs:tools=*http://schemas,android.com/tools”
android:layout_widthz*match_parenr
android:layoutheight^matchparent*
android[orientation="vertical”>
(TextView
android:id="阴id/user”
android:layout_width=*wrap_content*
android:1ayoutheight=*wrapcontent*
android:text="用户名'/>
<EditText
android:id="魁id/username”
android:layout_width=*fill_parent?,
android:layoutheight=*wrapcontent*/>
<TextView
android:id=*@+id/pass*
android:1ayout_width=*wrap_content*
android:layout_height=*wrap_content*
android:text="密码"/>
<EditText
android:id="睇id/password”
android:layout_width=*fill_parentff
android:layoutheight=*wrapcontent'/>
<Button
android:id=*@+id/loca*
android:layoujwidth="filLpareni”
android:1ayoutheight=*wrapcontcnt*
android:text="登陆"/>
</LinearLayout>
other.xn.l:
<?xmlversion:"].0"encoding=wutf-8ff?>
<LinearLayoutxmlns:android=*http://schenas.android,com/apk/res/android*
android:layout_width=*match_parent*
android:layout_height=*matchj)arent*
android:orientation=*horizontal*>
<TextView
android:id=*@+id/tel*
android:layout_width-*wrap_content*
android:layout_height=*wrap_content*
android:text="用户名:"/>
<TextView
android:id="阴id/te2"
android:layout_width=*wrap_content*
android:layout_height=*wrap_content*
/>
<TextViewandroid:id="睇id/'tc3"
android:layoutwidth=*wrap„content*
android:layout_height=*wrap_content*
androiddextJ密码:"/>
<TextV'iew
android:id="0+id/te4"
android:layout_widthz*wrap_content*
android:layout_height=Awrap_content*
/>
(/LinearLayout)
string.xml:
<?xmlversion="1.0"encoding="ulf-8"?〉
(resources)
<stringname=*app_name*>androidintent</string>
(stringnamc=*action_settings*>Settings</string>
<stringname=*hello_world*>Helloworld!</string>
(/resources)
94.编写程序实现如下功能:
(1)程序包含2个Activity
(2)ActivityOl包含一个按扭,点击按钮跳转到Activity02:
(3)Activity02包含一个按钮,点击按钮跳转到Activity。》
ActivityOl.java:
packagecom.exampIe.wpp_201242577two;
importandroid,app.Activity;
importandroid,content.Intent;
importandroid,os.Bundle;
importandroid,view.View;
importandroid,view.View.OnClickListener;
importandroid,widget.Button;
publicclassActivityOlextendsActivity:
©Override
publicvoidonCreate(BundlesavedlnstanceState)
(
super.onCreate(savedlnstanceState);
setContentView(R.layout,activity);
Buttonbutton=(Button)findViewById(R.id.buttonl);
button.setText("启动Activity02");
button.setOnClickListener(newOnClickListenerO:
©Override
publicvoidonClick(Viewv){
Intentintent=newIntent(ActivityOl.this,ActivityO2.class);
startActivity(intent);
}
));
)
)
Activity02.java
packagecom.example.wpp_201242577two;
importandroid,app.Activity;
importandroid,content.Intent;
importandroid,os.Bundle;
importandroid.view.View;
importandroid,view.View.OnClickListener;
importandroid,widget.Button;
publicclassActivity02extendsActivity:
@Override
publicvoidonCrcate(BundlesavedInstanceState)
{
super.onCreate(savodlnstanceStato);
setContentView(R.layout.activity02);
ButtonotherButton=(Button)findViewById(R.id.button3);
otherButton.setText("进入ActivityOT);
otherButton.setOnClickListenerinewOnClickListenerO)
©Override
publicvoidonClick(Viewv){
Intentintent=newIntent(Activity02.this,ActivityOl.class);
startActivity(intent);
)
));
)
)
activityOl.xml:
<?xmlversion=,,l.0*encoding=*utf-8w?>
(LinearLayoutxmlns:androidzA,http://schenas.android,com/apk/res/android*
android:1ayout_width=*matchparent*
android:layoutheight="matchparent"
android:orientation=*verticar>
<TextViewandroid:id=*0+id/textViewr
android:layout_width=*match_parent*
android:1ayoutheight=*wrapcontent*
android:text=/,ActivityOr/>
(Buttonandroid:id="0+id/buttonl”
android:layoutwidth-*matchparent*
android:layout_height=*wrap_contentA
android:text="启动Activity”/>
(/LinearLayout>
activity.02xml:
<?xmlversion=*1.0*encoding=*utf-8*?>
(LinearLayoutxm1ns:android=*http://schenas.android,com/apk/res/android*
android:layoutwidth^matchparent*
android:layout_height=*match_parent*
android:orientation=*vertical*>
(TextView
android:id="0+id/textViewK
android:layoutwidth=*matchparent*
android:layout_height=*wrap_content/,
android:text=*Activity02*/>
<Bitton
android:id=^+id/button3w
android:layoutwidth="matchparent*
android:layoutheight=*wrap_content*
android:text="Button”/>
</LinearLayout>
string.xml:
<?xmlversion="1.0"encoding="utf-8"?〉
(resources)
〈stringname=*app_namez,>wpp_201242577Two</string>
(stringname=*action_settings*>Settings</string>
<stringname="helloworld*>ActivityOK/string>
(/resources)
95.使用CheckBox控件实现多项选择。
要求:添加4个选项,名称分别为:swim、run、dance、walk
MainActivity.class:
packagecom.example.lab;
importandroid.app.Activity;
importandroid,os.Bundle;
importandroid.view.Gravity;
importandroid,view.View;
importandroid,widget.Button;
importandroid,widget.CheckBox;
importandroid.widget.CompoundButton;
importandroid,widget.TextView;
importandroid.widget.Toast;
publicclassMainActivityextendsActivity(
TextViewmTextViewl;
ButtonmButtonl;
CheckBoxmCheckBoxl;
CheckBoxm_CheckBox2;
CheckBoxm_CheckBox3;
CheckBoxm_CheckBox4;
/**Calledwhentheactivityisfirstcreated.*/
^Override
publicvoidonCreate(BundlesavedlnstanceState)(
super.onCreate(savedlnstanceState);
setContentView(R.layout.activity_main);
mTextViewl=(TextView)findViewById(R.id.textview);
mButton1=(Button)findviewById(R.id.buttonl);
m_CheckBoxl=(CheckBox)findViewBy!d(R.id.checkboxl);
m_CheckBox2=(CheckBox)findViewById(R.id.checkbox2);
m_CheckBox3=(CheckBox)findViewById(R.id.checkbox3);
m_CheckBox4=(CheckBox)findViewById(R.id.checkbox4);
m_CheckBoxl
.setOnCheckedChangeListener(newCheckBox.OnCheckedChangeListener(){
publicvoidonCheckedChanged(CompoundButtonbuttonView,
booleanisChecked){
if(m_CheckBoxl.isCheckedO){
DisplayToast("你选择了:"+m_CheekBoxl.getTextO);
I
)
));
m_CheckBox2
.setOnCheckedChangeListener(newCheckBox.OnCheckedChangeListener(){
publicvoidonCheckedChanged(CompoundButtonbuttonView,
booleanisChecked){
if(ra_CheckBox2.isChecked()){
DisplayToast("你选择了:"+mCheckBox2.getTextO);
)
)
});
m_CheckBox3
.setOnCheckedChangeListener(newCheckBox.OnCheckedChangeListenerO{
publicvoidonCheckedChanged(CompoundButtonbuttonView,
booleanisChecked){
if(mCheckBox3.isCheckedO)(
DisplayToast("你选择了:"+m_CheckBox3.getTextO);
)
}
));
m_CheckBox4
.setOnCheckedChangeListener(newCheckBox.OnCheckedChangeListenerO{
publicvoidonCheckedChanged(CompoundButtonbuttonView,
booleanisChecked)(
if(m_CheckBox4.isCheckedO){
DisplayToast("你选择了:"+m_CheckBox4.getTextO);
}
}
});
m_Buttonl.setOnClickListener(newButton.OnClickListener():
publicvoidonClick(Yiewv)(
intnum=0;
if(mCheckBox1.isChecked()){
num++;
if(m_CheckBox2.isChecked()){
num++;
)
if(m_CheckBox3.isChecked()){
num++;
)
if(m_CheckBox4.isChecked())■
num++;
)
DisplayToast("谢谢参与!你一共选择了"+num+"项!");
)
();
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年儿童艺术考试题及答案
- 深度解析(2026)《GBT 30082-2013硫化铜、硫化铅和硫化锌精矿 批料中金属质量的测定》
- 深度解析(2026)《GBT 30013-2013城市轨道交通试运营基本条件》
- 深度解析(2026)《GBT 29886-2013棉包回潮率试验方法 微波法》
- 深度解析(2026)《GBT 29856-2013半导体性单壁碳纳米管的近红外光致发光光谱表征方法》
- 《GBT 8309-2013茶 水溶性灰分碱度测定》(2026年)合规红线与避坑实操手册
- 2026年湿地绿化服务合同协议
- 四川省巴中市巴州区川2024-2025学年六年级下学期英语期中测试试卷(4月)(含答案)
- 【五年级上册语文】课内阅读理解答题技巧
- 2025北京八十中高二12月月考化学试题及答案
- 摩根士丹利 -半导体:中国AI加速器-谁有望胜出 China's AI Accelerators – Who's Poised to Win
- 2026中国广播影视出版社有限公司高校毕业生招聘3人备考题库含答案详解(完整版)
- 2025-2030非洲智能汽车零部件行业市场供需理解及投资潜力规划分析研究报告
- 2026季华实验室管理部门招聘3人(广东)建设笔试模拟试题及答案解析
- 2025重庆联交所集团所属单位招聘1人笔试历年难易错考点试卷带答案解析
- 广东省广州市2026年中考模拟数学试题七套附答案
- 《眼科临床诊疗指南(2025版)》
- 无人机防汛巡查监管规范
- 三年级数学下册第一单元两位数乘两位数导学案教学计划教案教学设计(2025-2026学年)
- 髋关节翻修术课件
- 科研伦理与学术规范答案(一)
评论
0/150
提交评论