前言:
Activity 是一个应用中的组件,它为用户提供一个可视的界面,方便用户操作,比如说拔打电话、照相、发邮件或者是浏览地图等。活动代表了一个具有用户界面的单一屏幕,Android 的活动是 ContextThemeWrapper 类的子类。
如果你用 C,C++ 或者 Java 语言编程,你应该知道这些程序从 main () 函数开始。很类似的,Android 系统初始化它的程序是通过活动中的 onCreate () 回调的调用开始的。存在有一序列的回调方法来启动一个活动,同时有一序列的方法来关闭活动。
回调:
onCreate():这是第一个回调,在活动第一次创建是调用
onStart() :这个回调在活动为用户可见时被调用
onResume():这个回调在应用程序与用户开始可交互的时候调用
onPause():被暂停的活动无法接受用户输入,不能执行任何代码。当当前活动将要被暂停,上一个活动将要被恢复是调用
onStop() :当活动不在可见时调用
onDestroy():当活动被系统销毁之前调用
onRestart():当活动被停止以后重新打开时调用
通过简单的步骤展示 Android 应用程序活动的生命周期:
1、使用 eclipse IDE 来创建一个 Android 应用程序,并命名为 HelloWorld 放在 com.example.helloworld 包下。
2、按照下面修改主要活动文件 MainActivity.java,保持其他部分不变。
3、运行应用程序来打开 Android 模拟器,并检查应用程序的修改结果。
下面是主要活动文件 src/com.example.helloworld/MainActivity.java 修改的内容,里面包含每一个基本的生命周期方法。Log.d () 方法用来生成日志信息:
活动类从项目的 res/layout 中的 XML 文件加载所有的 UI 组件。下面的语句从 res/layout/activity_main.xml 文件中加载 UI 组件:
一个应用程序可以有 1 个或多个活动,而没有任何限制。每个为应用程序所定义的活动都需要在 AndroidManifest.xml 中声明。应用的主要活动需要在清单中声明,且意图过滤器标签中需要包含 MAIN 动作和 LAUNCHER 类别。如下:
不论是 MAIN 动作还是 LAUNCHER 类别没有在活动中声明,那么应用程序的图标将不会出现在主屏幕的应用列表中。
让我们运行起刚刚修改的 "Hellow World!" 应用程序。假设你在环境搭建的时候已经创建了 AVD 。从 Eclipse 运行应用,打开一个项目中的活动文件,并从工具栏点击运行图标。Eclipse 在 AVD 上安装应用并启动它。如果一切顺利,将显示模拟器屏幕如下,同时你可以在 Eclipse IDE 的 LogCat 窗口中看到日志信息:
让我们点击 Android 模拟器上的红色按钮,它将在 Eclipse IDE 的 LogCat 窗口中产生如下的事件消息:
让我们再次点击 Android 模拟器上的菜单按钮,它将在 Eclipse IDE 的 LogCat 窗口中产生如下的事件消息:
接下来,让我们点击 Android 模拟器上的返回按钮,它将在 Eclipse IDE 的 LogCat 窗口中产生如下的事件消息,Android 应用程序上活动的整个生命周期完成。
网友评论