一、Activity介绍
Activity是Android应用的四大组件之一(另外三个是Service、BroadcastReceiver和Comtenprovider),而Activity是Android应用最常见的组件之一。一个Android应用往往包括多个Activity,不同的Activity向用户呈现不同的操作界面。Android应用的多个Activity组成Activity栈,当前活动的Activity位于栈顶。
Activity是Android应用中负责与用户交互的组件——大致上可以把它想象成Swing编程中的JFrame控件。不过它与JFrame控件的区别在于:JFrame控件本身可以设置布局管理器,不断向JFrame中添加组件,但Activity只能通过setContentView(View)来显示指定组件。
二、创建Activity
1、新建类继承Activity或其子类
import androidx.appcompat.app.AppCompatActivity;
//创建ActivityTest继承AppCompatActivity
public class ActivityTest extends AppCompatActivity {
}
2 在AndroidManifest.xml中声明新建的Activity
<activity android:name=".ActivityTest"></activity>
3 创建布局并在Activity的OnCreate中设置
创建布局
public class ActivityTest extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置布局
setContentView(R.layout.activity_test);
}
}
三、Activity生命周期
当Activity处于Android应用中运行时,它的活动状态有Android以Activity栈的形式管理,当前活动的Activity位于栈顶。随着不同应用的运行,每个Activity都有可能从活动状态转入非活动转态,也可能从非活动转态转入活动转态。
1、Activity生命周期运行过程
从左往右诠释了Activity从创建到运行再到销毁
-
在Activity的整个生命周期发生在第一次调用onCreate方法到最后一次调用onDestroy之间。一个Activity将在onCreate方法中完成所有“全局”状态的设置,并在onDestroy方法中释放所有剩余的资源。
-
在Activity的visible生命周期发生在onStart方法到onStop方法之间相应调用。这两种方法之间,可以维护向用户显示Activity所需的资源。
-
Activity的foreground生命周期发生在onResume方法和onPause方法之间。Activity通常在这两个方法可以在恢复状态和暂停状态之间进行切换。
2、Activity生命周期中方法调用
- onCreate(Bundle saveStatus):创建Activity时被回调。该方法只会被调用一次。
- onStart():启动Activity时被回调
- onRestart():重新启动Activity时被回调。在onStart()方法后一定会回调onResume()方法。
- onPause():暂停Activity时回调
- onStop():停止Activity时回调
- onDestory():销毁Activity时被回调。该方法只会被调用一次
public class ActivityTest extends AppCompatActivity {
//创建Activity
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.