Android 系列 1.2了解Android活动生命周期

来源:互联网 发布:apache一键安装包下载 编辑:程序博客网 时间:2024/05/22 13:04
1.2了解Android活动生命周期


问题
Android应用没有“主”方法; 你需要了解他们如何开始,以及他们停止或停止。
解决

类android.app.Activity提供了许多明确定义的生命周期方法,当应用程序启动,挂起,重新启动等时调用,以及一个可以调用来将活动标记为完成的方法。

讨论
您的Android应用程序在其自己的Unix进程中运行,因此通常不能直接影响任何其他正在运行的应用程序。 Android Runtime接口与操作系统在应用程序启动时调用,当用户切换到另一个应用程序时,等等。 Android应用程序有一个定义良好的生命周期。
Android应用程式可以是以下三种状态之一:
•活动,其中应用程序对用户可见并且正在运行
•已暂停,其中应用程序部分模糊,并且已丢失输入焦点,例如,当对话框在您的活动前面时。
•停止,其中应用程序完全从视图中隐藏
您的应用程式将在这些状态之间转换,Android会在适当的时间,在目前活动上呼叫以下方法:
void onCreate(Bundle savedInstanceState)
void onStart()
void onResume()
void onRestart()
void onPause()
void onStop()
void onDestroy()

您可以在图1-2中看到该生命周期的状态图。


图1-2。 Android生命周期状态


对于应用程序的第一个活动,onCreate()是您知道应用程序已启动的方式。这是你通常做类似于构造函数的工作,例如使用setContentView()设置“主窗口”,向按钮添加侦听器以执行工作(包括启动其他活动)等。这是即使是最简单的Android应用程序需要的一种方法。
请注意,目前大多数应用程序的用户界面基于Fragments。 Fragment是Activity的UI的一个片段。例如,在Android的早期,典型的列表详细信息应用程序将使用两个活动,一个用于列表,一个用于详细信息。这当然是允许的,但是具有的缺点是,在平板电脑上,或者在横向模式下的大屏幕手机上,不可能并排具有两个视图。活动可以分成多个片段(参见配方6.7),这解决了这个问题。片段只能存在于活动中。 Fragment生命周期与Activity周期的生命周期相似,但是有一些额外的方法。
您可以通过在Eclipse中创建一个虚拟项目并使用日志“debug”语句覆盖所有生命周期方法来查看各种生命周期方法的调用。


@Override
public void onPause() {
Log.d(TAG, "In method onPause()");
}

0 0
原创粉丝点击