前面我们做了一个小例子,在分析代码的时候我们提到了Activity,那么什么是Activity呢?
Activity是Android应用程序提供交互界面的一个重要组件,也是Android重要组件之一(另外3个是Service、BroadcastReceiver和ContentProvider)。
与开发Web应用时建立Servlet类相似,建立自己的Activity也需要继承Activity基类,当然,在不同应用场景下,有时也要求继承Activity的子类。例如如果应用程序界面只包括列表,则可以让应用程序继承ListActivity;如果应用程序界面需要实现标签页效果,则可以让应用程序继承TabActivity。
Activity的启动过程
1、建立activity类及定义属性和内部方法
2、注册activity在manifest文件中
3、在启动函数onCreate中实现业务
3.1 界面定义layout
3.2界面的绑定setContentView()
package com.example.myfirstapp;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
这是我们前面的Activity,下面我们来实现一个LauncherActivity
LauncherActivity继承了ListActivty,因此它本质上也是一个开发列表界面的Activity,但它开发出来的列表界面与普通列表界面有所不同。它开发出来的列表界面中的每个列表项都对应一个Intent,因此当用户单击不同的列表项时,应用程序会自动启动对应的Activity。
package com.example.testactivity;
import android.app.LauncherActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class MainActivity extends LauncherActivity {
// 定义两个Activity的名称
String[] names = { "选项一", "选项二" };
// 定义两个Activity对应的实现类
Class<?>[] clazzs = { ActivityTest1.class, ActivityTest2.class };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/

本文深入解析Android中的Activity,介绍了Activity作为应用交互界面组件的重要性,及其与Web应用Servlet的类比。文章详细阐述了Activity的启动过程、生命周期、不同启动模式以及与Window的关系。此外,还探讨了Activity的状态变化,包括运行、暂停、停止和销毁,并解释了android:launchMode属性如何影响Activity实例化和加载。
最低0.47元/天 解锁文章
3318

被折叠的 条评论
为什么被折叠?



