您的位置:首页 > 移动开发 > Android开发

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

2017-01-05 14:24 253 查看
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()");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息