对于任何一个Android应用程序来讲,Activity类都是其核心组成部分。在很多时候你需要为每一个屏幕显示定义和实现一个Activity。Activity类需要引入包import android.app.Activity。
Android应用程序可以使多线程的,Android允许同时运行多个程序。应用程序可以拥有后台进程,并且可以被来电、短信等事件中断。但是在同一个时间只能有一个活动的程序对用户可见,也就是说,任意时刻只有一个Android应用程序的Activity处于前台。
在Android系统中,系统会跟踪所以运行的Activity对象,并且把这些Activity对象放进一个Activity栈中。当前活动的Activity处于栈顶,Activity完成以后,它会被从栈中移除。
在Android中切换Activity需要用到如下步骤:
1、把该Activity注册到AndroidMainfest.xml中,示例:
<activity
android:name="MessageActivity"/>
2、通过Intent来进行界面切换
Intent intent=new Intent(CurrentActivity.this,NextActivity.class);
startActivity(intent);
有的时候可能会有一些数据需要从一个Activity传到另一个Activity,最常用的方法是通过Bundle
Bundle 的使用时这样的,首先在当前Activity中将数据压入Bundle
Intent intent=new Intent(CurrentActivity.this,NextActivity.class);
Bundle mBundle = new Bundle();
mBundle.putString("Data", "dataText"); //压入数据
intent.putExtras(mBundle);
startActivity(intent);
在启动另一个Activity以后需要接受数据,具体的操作如下:
Bundle bundle = getIntent().getExtras();
String data=bundle.getString("Data"); //读取数据
如果仅仅是进行界面切换操作,那么我们还可以使用另外一种方法
通过setContentView方法设置layout,这种界面切换只在一个Activity中进行,所有变量都可以得到,不需要使用数据压入和读取。
示例:
setContentView(R.layout.message);