what
Activity 的基本概念
Activity 是 Android 应用的一个单独的屏幕,相当于一个窗口或页面。每个 Activity 通常都对应着一个用户界面(UI),并且是用户与应用程序交互的入口点。
- Activity 的生命周期:Activity 有一套预定义的生命周期方法,用于管理它的创建、显示、暂停和销毁状态。
- 每个应用至少有一个 Activity:通常,应用的主界面就是一个 Activity。当你打开一个应用时,系统会启动该应用的第一个 Activity。
Activity 的生命周期
理解 Activity 的生命周期 对于管理应用资源、避免内存泄漏和优化用户体验非常重要。下面是 Activity 生命周期的主要方法及其用途:
-
onCreate():Activity 被创建时调用。你通常会在这个方法中初始化用户界面和设置一些初始数据。
-
onStart():Activity 即将对用户可见时调用。
-
onResume():Activity 开始与用户交互时调用,应用进入“前台”。
-
onPause():Activity 即将离开前台(例如,用户切换到另一个应用时)调用。你可以在这里保存数据或停止动画等。 最主要是我们要知道我们此时还是能在前台看见app,我们依旧可见。
-
onStop():Activity 不再可见时调用,可能被销毁或切换到后台。
-
onDestroy():Activity 被销毁时调用,通常是当用户关闭应用或系统资源不足时。
周期调用
java">Log.d("ActivityLifecycle", "onDestroy called");这是日志类,我们通过日志类进行调用
Activity 与任务栈
每个 Activity 都存在于一个任务栈(Task Stack)中。当你启动一个新的 Activity 时,它会被压入栈顶,用户按下返回键时,Activity 会从栈中移除,返回到上一个 Activity。这个机制确保了应用的页面导航顺序。
UI 与 Activity 的绑定
通常,Activity 会关联一个 XML 布局文件,这个文件定义了 Activity 的用户界面。通过 setContentView()
方法,你可以将布局文件绑定到 Activity:
java">@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 设置 Activity 的布局setContentView(R.layout.activity_main);
}
在布局文件中,你定义了按钮、文本框等 UI 元素。通过 findViewById(),你可以在 Activity 中访问并操作这些元素:
java">Button myButton = findViewById(R.id.my_button);
myButton.setOnClickListener(new View.OnClickListener