1.软文推荐

2.软文推荐

3.软文推荐

Activity是Android四大组件之一,为用户提供与系统交互的界面,每一个应用都有一个或者多个Acticity.

活动代表了一个具有用户界面的单一屏幕,如 Java 的窗口或者帧。Android 的活动是 ContextThemeWrapper 类的子类。

如果你曾经用 C,C++ 或者 Java 语言编程,你应该知道这些程序从 main() 函数开始。很类似的,Android 系统初始化它的程序是通过活动中的 onCreate() 回调的调用开始的。存在有一序列的回调方法来启动一个活动,同时有一序列的方法来关闭活动,如下面的活动声明周期图所示:

Activity 类定义了下面的回调。你可以不用实现所有的回调方法。但了解其中的每一个非常的重要,实现这些可以保证你的应用行为如用户所期望的那样。

实例

这个实例通过简单地步骤展示 Android 应用程序活动的生命周期。按照下面的步骤来修改我们在 Hello World 实例章节中创建的 Android 应用程序。

下面是主要活动文件src/com.example.helloworld/MainActivity.java修改的内容。里面包含每一个基本的生命周期方法。Log.d()方法用来生成日志信息:

package com.example.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;

public class MainActivity extends Activity {
  String msg = "Android : ";

  /** 当活动第一次被创建时调用 */
  @Override
  public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
     Log.d(msg, "The onCreate() event");
  }

  /** 当活动即将可见时调用 */
  @Override
  protected void onStart() {
     super.onStart();
     Log.d(msg, "The onStart() event");
  }

  /** 当活动可见时调用 */
  @Override
  protected void onResume() {
     super.onResume();
     Log.d(msg, "The onResume() event");
  }

  /** 当其他活动获得焦点时调用 */
  @Override
  protected void onPause() {
     super.onPause();
     Log.d(msg, "The onPause() event");
  }

  /** 当活动不再可见时调用 */
  @Override
  protected void onStop() {
     super.onStop();
     Log.d(msg, "The onStop() event");
  }

  /** 当活动将被销毁时调用 */
  @Override
  public void onDestroy() {
     super.onDestroy();
     Log.d(msg, "The onDestroy() event");
  }
}

活动类从项目的res/layout中的XML文件加载所有的UI组件。下面的语句从res/layout/activity_main.xml文件中加载UI组件:

setContentView(R.layout.activity_main);

一个应用程序可以有1个或多个活动,而没有任何限制。每个为应用程序所定义的活动都需要在AndroidManifest.xml中声明。应用的主要活动需要在清单中声明,且意图过滤器标签中需要包含 MAIN 动作和 LAUNCHER 类别。如下:

"http://schemas.android.com/apk/res/android"
  package="com.example.helloworld"
  android:versionCode="1"
  android:versionName="1.0" >

  "8"
     android:targetSdkVersion="22" />

  "@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >

      ".MainActivity"
         android:label="@string/title_activity_main" >

         
            "android.intent.action.MAIN" />
            "android.intent.category.LAUNCHER"/>
         

      

  

不论是 MAIN 动作还是 LAUNCHER 类别没有在活动中声明,那么应用程序的图标将不会出现在主屏幕的应用列表中。

让我们运行起刚刚修改的 “Hellow World!” 应用程序。假设你在环境搭建的时候已经创建了 AVD 。从 Eclipse 运行应用,打开一个项目中的活动文件,并从工具栏点击运行图片图标。Eclipse在AVD上安装应用并启动它。如果一切顺利,将显示模拟器屏幕如下,同时你可以在Eclipse IDE的LogCat窗口中看到日志信息:

07-19 15:00:43.405: D/Android :(866): The onCreate() event
07-19 15:00:43.405: D/Android :(866): The onStart() event
07-19 15:00:43.415: D/Android :(866): The onResume() event

让我们点击 Android 模拟器上的红色按钮图片,它将在Eclipse IDE的LogCat窗口中产生如下的事件消息:

07-19 15:01:10.995: D/Android :(866): The onPause() event
07-19 15:01:12.705: D/Android :(866): The onStop() event

让我们再次点击 Android 模拟器上的菜单按钮图片,它将在 Eclipse IDE 的 LogCat 窗口中产生如下的事件消息:

07-19 15:01:13.995: D/Android :(866): The onStart() event
07-19 15:01:14.705: D/Android :(866): The onResume() event

接下来,让我们点击Android模拟器上的返回按钮图片,它将在Eclipse IDE的LogCat窗口中产生如下的事件消息,Android 应用程序上活动的整个生命周期完成。

07-19 15:33:15.687: D/Android :(992): The onPause() event
07-19 15:33:15.525: D/Android :(992): The onStop() event
07-19 15:33:15.525: D/Android :(992): The onDestroy() event

本文来源:www.lxlinux.net/8319.html,若引用不当,请联系修改。

相关文章 8

1

关于freebsd系统的信息 3分钟前

目录:1、FreeBSD从零开始---系统安装(一)2、freebsd是多少位的操作系统3、FreeBSD是一种什么样的计算机操作系统?4、什么是FreeBSD??FreeB...

3

Linux常用命令—install命令 5分钟前

Linux常用命令 install命令 的作用是安装或升级软件或备份数据,它的使用权限是所有用户,下面良许叫教程网为大家分享一下Linux常用命令...

4

Linux系统查看tomcat进程命令 8分钟前

很多小伙伴在查看tomcat进程时常常会把ps -ef|grep tomcat命令记错为ps -f|grep tomcat命令,本篇文章主要对这两命令进行区分,下面一起来看一下...

5

讲解一下JSP 服务器响应 9分钟前

Response响应对象主要将JSP容器处理后的结果传回到客户端。可以通过response变量设置HTTP的状态和向客户端发送数据,如Cookie、HTTP文件头信息...

6

美国高防便宜vps(美国高防服务器哪家好) 11分钟前

目录:1、便宜性能好的美国VPS都有哪些?能推荐几个吗?2、求推荐个,美国高防VPS,300一个月以下的就好。3、哪家美国VPS便宜又稳定啊?...

7

Linux常用命令—shopt命令 14分钟前

Linux常用命令 shopt命令 用于显示和设置shell中的行为选项,通过这些选项以增强shell易用性。shopt命令若不带任何参数选项,则可以显示所有...

8

广播ip是多少(IP网络广播) 15分钟前

目录:1、IP地址159.11.12.13,子网掩码为255.255.224.0,网络号为多少?广播地址为多少?可用IP地址范围是多少?2、ip地址为162.168.187.99/22则广播...