免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1161 | 回复: 0
打印 上一主题 下一主题

android的Activity [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 08:41 |只看该作者 |倒序浏览
Activity

Activity 的生命周期

 

         我们就理解为手机的一个显示屏幕或者窗口,用来和用户进行交互的

通常activity是全屏的,也可以作为floating windows(通过windowIsFloating设置主题)悬浮窗口,也可以嵌入别的activity(ActivityGroup)

         所有的Activity都要在AndroidManifest.xml中进行注册。

 

一.   Activity 的生命周期:

Activity所拥有的方法如下图

OnCreate()必须在子类中被实现.(主要用于初始化)

 onDestroy()用于activity资源的释放。

 activity7个方法中在后三个方法中都有可能使activity被终止释放。所以要做某些数据的提交最好是在onPause()中处理。因为onPause()activity终止时肯定会调用的函数。

Activity可分为以下几个状态:

         1.当前屏幕running

         2.失去焦点但是还是可见的(activity为悬浮的或者透明的),但是处于暂停状态(Pause),在此状态系统有可能因为内存不足 被杀死。

         3.不可以见的,完全被另一个activity覆盖,处于停止状态(stop),在此状态系统有可能因为内存不足 被杀死。

         4.如果一个activity处于暂停或者停止状态,系统可以调用finish()来使程序结束,或者是简单的杀死进程。如果用户想要在一次显示被finish()activity,必须重新生成也就是从Oncreate()开始生成。

注意:    

         如果Activity是第一次执行Oncreate()会被执行一次,以后就不会再被调用除非发生以上的4的情况。onDestroy()也是只会调用一次,其余方法可调用多次。

 

Activity生命周期:

         1.整个生命周期开始于调用onCreate(),终结于调用onDestroy().一个activity通过onCreate()来初始化,调用onDestroy()释放所有的资源。

         2.交互生命周期(在这个时期用户是可以看见屏幕的),发生在onStart()onStop()之间。在这个期间用户可以看见屏幕,也可能看不见屏幕。在这两种方法之间你可以维护资源所需要的显示互动给用户。

         3.可见生命周期。在开始于onResume()直到onPause()结束。在此阶段用户是可以看见屏幕的。

下图充分说明了Activity的生命周期

 

两个activity

         第一次执行activity         onCreate->onStart()->onResume();

         由运行到暂停 onResume->onPause()

         有运行到停止 onResume->onPause()->onStop()

         由停止到运行 onStop->onRestart()->onStart()->onResume()

 activity为悬浮的activity或者是透明的activity

         由运行到暂停 onResume->onPause()

         由停止到运行 onPause()->onResume()

以上均指父activity

 

设置activity为悬浮和透明的activity

         AndroidManifest.xml的相关的Activity中添加 android:theme=”@android:style/Theme.Dialog设为悬浮。加入 android:theme=”@android:style/Theme.Translucent” 设为透明的activity

 

 

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP