(Androd面试基础知识总结.docx

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(Androd面试基础知识总结

ActivityActivity的概念是Android应用层开发的四大组件之一,主要负责和用户交互部分,有自己的生命周期,在其上可以布置按钮,文本框等各种控件,简单来说就是Android的UI部分。Activity与View的区别Activity是四大组件中唯一一个用来和用户进行交互的组件。可以说Activity就是android的视图层。如果再细化,Activity相当于视图层中的控制层,是用来控制和管理View的,真正用来显示和处理事件的实际上是View。每个Activity内部都有一个Window对象, Window对象包含了一个DecorView(实际上就是FrameLayout),我们通过setContentView给Activity设置显示的View实际上都是加到了DecorView中。Activity生命周期生命周期主干方法描述可被杀死下一个onCreate()在Activity第一次被创建的时候被调用。这里是你做所有初始化设置的地方—创建视图、绑定数据至列表等。如果曾经有状态记录(参阅后述Saving?Activity?State。),则调用此方法时会传入一个包含着此activity以前状态的包对象做为参数否onStart()onStart()在Activity正要变得为用户所见时被调用。数据刷新时候调用!!!当Activity转向前台时接着调用onResume()在Activity变为隐藏时接着知行onStop()否onResume()onStop()onResume()在Activity开始与用户进行交互之前被调用。此时Activity位于堆栈顶部,并接收用户输入。否onPause()Activity run……Activity开始运行……………………onPasue()当系统将要启动另一个 Activity时调用。此方法主要用来将未保存的变化进行持久化,停止类似动画这样耗费CPU的动作等。这一切动作应该在短时间内完成,因为下一个Activity必须等到此方法返回后才会继续。当Activity重新回到前台会执行onResume()【弹出对话框】。当Activity变为用户不可见时会执行onStop()。是onResume()onStop()onStop()当Activity不再为用户可见时调用此方法。这可能发生在它被销毁或者另一个Activity(可能是现存的或者是新的)回到运行状态并覆盖了它。如果Activity再次回到前台跟用户交互则执行onRestart().如果关闭Activity则执行onDestroy()是onRestart()onDestroy()onDestroy()在Activity销毁前调用。这是Activity接收的最后一个调用。这可能发生在Activity结束(调用了它的finish()方法)或因为系统需要空间所以临时的销毁了此Activity的实例时。可以用isFinishing()方法来区分这两种情况。是已经完蛋了,还调用毛线!!!其他中转方法onRestart()在Activity停止后,在再次启动之前被调用。之后执行onStart().否onStart()Activity启动模式四种启动模式standard默认模式,可以不用写配置。在这个模式下,都会默认创建一个新的实例。因此,在这种模式下,可以有多个相同的实例,也允许多个相同Activity叠加。singleTop可以有多个实例,但是不允许多个相同Activity叠加。即,如果Activity在栈顶的时候,启动相同的Activity,不会创建新的实例,而会调用其onNewIntent方法。singleTask只有一个实例。在同一个应用程序中启动它的时候,若Activity不存在,则会在当前task创建一个新的实例,若存在,则会把task中在其之上的其它Activity destory掉并调用它的onNewIntent方法。如果是在别的应用程序中启动它,则会新建一个task,并在该task中启动这个Activity,singleTask允许别的Activity与其在一个task中共存,也就是说,如果我在这个singleTask的实例中再打开新的Activity,这个新的Activity还是会在singleTask的实例的task中。singleInstance只有一个实例,并且这个实例独立运行在一个task中,这个task只有这个实例,不允许有别的Activity存在。配置样例activity?android:name=com.example.mobilesafe.WatchDogActivity?android:launchMode=singleInstance/Activity启动方法在一个Activity中调用startA

文档评论(0)

popo786 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档