版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
androidUI相关1.Activity(Activity的生命周期)2.Intent3.Layout与常用控件10Activity生命周期onCreate()onStart()onRestart()onResumeonPause()onStop()onDestroy()2030Intent介绍Intent主要用于Activity,Service,BroadcastReceiver之间的通信传替数据
1、通过Context.startActivity()或Activity.startActivityForResult()方法启动新的Activity2、通过广播Intent机制将Intent发送给任何对该Intent感兴趣的BroadcastReceiver3、通过startService(Intent)或bindService(Intent,ServiceConnection,int)来和后台的Service交互50Intent与其它组件交互图
见<图片.wps>中图一60Intent包含的描述部分1、Action:操作2、data:数据(联系人)3、type:数据类型(可以指定intent的数据类型)4、category:类别5、extras:附件信息6、component:目标组件category,extras,component还没理解,后续补上70Layout与常用控件viewwidget常用布局(Layout)常用控件UI事件90view与viewGroup1、所有高级UI组件都继承View类而实现的2、一个View在屏幕上占据一块矩形区域3、负责渲染4、负责处理发生的事件5、设置是否可见6、设置是否可以获得焦点等viewGroup1、一个ViewGroup对象是一Android.view.ViewGroup实例2、View的容器3、负责对添加进ViewGroup的View进行布局4、一个ViewGroup可以加入到另一个ViewGroup100view与viewGroup关系110常用布局android.widget.LinearLayout继承viewgroupandroid.widget.FrameLayoutandroid.widget.RelativeLayoutandroid.widget.AbsoluteLayout130LinearLayout(线性布局)
继承关系140FrameLayoutAbsoluteLayoutRelativeLayout(以上继承关系略)LinearLayout一些属性1、android:orientation=“vertical”(垂直方向)2、android:orientation=“horizontal”(水平方向)举例如下:150UI监听过程认识UI
View如何处理响应事件?Android提供的两种处理机制(1)EventListeners(事件侦听器)(2)EventHandlers(事件处理器)一般用于自定义组件重载对应的事件处理函数170常用UI事件1、View.OnClickListener的onClick()2、View.OnFocusChangeListener的onFocusChange()3、View.OnKeyListener的onKey()4、View.OnTouchListener的onTouch()5、View.OnCreateContextMenuListener的onCreateContextMenu()讲解过程....通过实例180常用UIButton(按钮)TextView(文本框)EditText(文本编辑框)CheckBox(多项选择)ImageView(图片视图)ImageButton(图片按钮)Dialog对话框MenuCheckBox(多项选择)RadioGroup(单项选择)Spinner(下拉列表)TimePicker(时间选择器)ScrollView(滚动视图)ProgressBar(进度条)190认识Service1、后台运行2、不能自己运行,需要通过某一个Activity或其他Context对象来启动:
context.startService()或constext.bindService();3、最好启动新线程来运行很耗时Service4、Service的应用场景起动方式
1、通过startService启动2、通过bindService210实现service实现onCreate()实现onBind(Intenti)实现onUnbind(Intenti)实现onStart(Intent,int)实现onDestroy()220Service生命周期图见<图片.wps>图二230作用一个专门用来接收广播通知信息,并作出相应处理的组件,很多广播是源自于本身的-----比如,通知时区改变,电池电量低,拍摄照片,来电,发短信或者用户改变了语言选项等.应用程序也可以进行广播---比如说,通知其它应用程序数据下载完成并处于可用状态.注册方式:有两种注册方式:一种是通过AndroidManifest.xml,另一种是通过Cotext.sendBroadcast()方法进行注册,一个程序可以注册多个,250生命周期voidonReceive(ContextcurContext,IntentbroadcastMsg);当广播消息抵达接收器时,Android调用它的onReceive()方法,并将包含消息的intent对象传递给他.广播接收器公在它执行这个方法时处于活跃状态,当onReceive()返回后,它变为状态举例官方说明:AprocessthatiscurrentlyexecutingaBroadcastReceiver(thatis,currentlyrunningthecodeinitsonReceive(Context,Intent)method)isconsideredtobeaforegroundprocessandwillbekeptrunningbythesystemexceptundercasesofextremememorypressure.260ContentProvider详解简介 提供了一种通用的接口机制以便应用程序之间共享数据.通过引入一个抽象层来隐藏数据来源,它解除了应用程序与数据之间的耦合性,让应用程序开发者不必了解数据来源的具体实现290本地实现Android自身也提供了几个系统本地实现的ContentProvider:Contacts,Brower,CalLog,Settings以及MediaStoreContacts用于读取,修改和保存通讯录的信息.Brower可用于读取和修改网页浏览器的书签,浏览历史以及网页搜索等CallLog用于查看和更新呼叫历史,包括列表,呼出列表,未接来电列表和通话细节(如接听时间,呼叫人及持续时间等)MediaStore针对设备上的多媒体文件,它提供了集中的托管式访问方式,第三方的应用程序可以通过它来保存音频,视频及图片等文件,并可以设置文件访问权限为全局可见以便共享Setting用于访问各修改设备的设置,如蓝牙设置,手机铃声等,在涉及或类似功能时,应用程序应该尽量使用本地ContentProvider而避免自己编写,因为这样会带来更好的性能,兼容性以及集成性300简单实例本地实现----电话联系人310android安装,卸载android安装android卸载320安装利用Android软件安装工具-APK安装器(1)手机端:通过读卡器将APK文件放入SD卡中后,再将SD卡插回手机中就可以使用(2)PC端:安装对应PC端软件330模拟器中卸载1、首先,将模拟器执行起来,直到正式进入系统。2、接下来,打开一个cmd窗口,路径切换到模拟器目录下的tools目录。3、输入:adbshellrmdata/app/你要安装的apk文件340单元测试框架简介常用测试父类举例350单元测试框架简介(api)
如果想在android里面做单元测试,有两条基本的路子可行。第一,就是java程序员最为熟悉和常用的junit,但是由于目前androidsdk(version1.1)中只是提供了stubbedmethods/classes,没有具体的实现代码,所以如果用junit的话,我们需要在运行单元测试时,一定要用jdk来运行,利用java命令来启动junit的某个runner。如果是用eclipse的话,可以在runconfiguration里新建一个junit。但是一定要记得在classpath选项卡里将bootstrapentries中的androidlibrary改成jre,并且添加junit.jar。具体的设置可以参考:。而且,更为遗憾的是,这种方法运行的junit运行在jdk之上的,而不是android,所以,只能测试一些和android无关的东西,比如业务逻辑,数据封装,数值计算等等。并不能测试androidapi。第二,采用instrumentation.android单元测试的主入口是instrumentationtestrunner。它相当于junit当中testrunner的作用。你可以将instrumentation理解为一种没有图形界面的,具有启动能力的,用于监控其他类(用targetpackage声明)的工具类。任何想成为instrumentation的类必须继承android.app.instrumentation360常用测试父类TestCasejunit.frameworkTestCase测试与android环境无关的接口,可以继承此类,这种通用接口测试通常用于一个工具类的功能测试,举例AndroidTestCaseandroid.test.AndroidTestCase测试与Android环境有关的接口,可以继承此类,举例InstrumentationTestCaseandroid.test.InstrumentationTestCase测试某个Activity类中的函数,可以继承此类,使用此类时需要编写启动Activity的代码,举例ActivityInstrumentatoinTestCase2android.test.ActivityInstrumentationTestCase2使用此时不用启动Activity代码,只要向父类构造函数传递被启动Activity的包名和Class对象举例370单元测试用例380权限系统简介用法常用权限举例390简介Android权限分的很细,但命名比较人性化,Androidpermission比SymbianCapabilities有了不少改进,下面就来看看权限许可都有哪些定义吧,发现还是比较繁多的,如果发现你的程序某个地方调试错误很可能是Androidpermission的访问控制在作怪,这也是为了安全防止手机成为病毒的场所。Android开发网获取到的消息来看不用购买高昂的数字签名证书,权限许可权由用户决定而不是手机制造
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 打字员操作安全竞赛考核试卷含答案
- 烧碱电解工班组安全知识考核试卷含答案
- 三氯氢硅合成工风险识别水平考核试卷含答案
- 陶瓷贴花工创新思维强化考核试卷含答案
- 野生植物管护巡护工创新实践竞赛考核试卷含答案
- 熔融纺干燥操作工岗前安全宣教考核试卷含答案
- 碳汇计量评估师安全技能知识考核试卷含答案
- 2026班主任终极面试题及答案
- 2026白云九中面试题目及答案
- 2026白城工会面试题及答案
- 2024年湖北省中考地理·生物试卷(含答案解析)
- 城轨安全用电-触电急救
- JJG539-2016数字指示秤检定记录格式
- 慢性肾脏病健康宣教
- 氩气安全技术说明书MSDS
- 银行保安服务投标方案(完整技术标)
- 拒绝文身主题班会课件
- 北京版八年级数学下册全册课件【完整版】
- 汽车行走的艺术学习通课后章节答案期末考试题库2023年
- 常微分方程一阶微分方程的初等解法公开课一等奖市赛课获奖课件
- 上海市临检中心 临床微生物学检验新技术及质量控制学习班课件 微生物检验新技术、新趋势
评论
0/150
提交评论