Android教程:活动组件
本Android教程讨论了活动组件。
Android教程:活动
活动为用户提供了与应用程序进行交互的屏幕/界面。
一个应用程序通常具有多个活动。应用程序的每个屏幕都是不同的活动。我们可以使用下图了解这一点:第一个活动(屏幕)有一个按钮,单击该按钮会将用户带到第二个屏幕,这是第二个活动。
让我们以我们自己的Facebook应用为例。
登录屏幕是启动Facebook应用程序时看到的第一个活动。
登录后,遇到的下一个活动是新闻提要屏幕。
应用程序的所有活动都是松散互连的:活动是围绕用户在与另一个活动进行交互时所执行的特定动作而设计的。另外,取决于用户的动作,一个活动可以为几种不同的活动让位。
活动可以具有全屏或者浮动窗口。
主要活动:通常,应用程序的一项活动是主要活动。这是首次启动应用程序时显示给用户的活动(屏幕)。
活动生命周期的各个阶段
为了开发成功的应用程序,对于开发人员而言,根据用户的动作绘制出完整的活动流非常重要。
这样可以确保应用程序的行为完全符合预期。
因此,了解活动生命周期对于开发人员非常重要。
以下是活动生命周期中的不同状态:
1)起始状态:
当活动尚未在内存中存在时,它处于启动状态。
2)恢复/运行状态:
处于前台的活动处于运行状态。
当前在屏幕上并与用户交互的任何活动都是在该特定时间点的正在运行的活动。
它存在于活动堆栈的顶部。
3)暂停状态:
当某项活动不在焦点上(即未与用户互动),但仍在屏幕上可见时,则处于暂停状态。
4)停止状态:
屏幕上不可见但内存中存在的活动处于停止状态。
5)被毁状态:
活动被破坏是由于从内存中删除了一个不再需要的活动。
当活动管理者决定不再使用此类活动时,通常会发生此类删除。
活动堆栈
这些活动使用堆栈机制来经历其生命周期。
"后进先出"系统在Android Activity堆栈中运行。
以下是活动反向堆栈工作原理的简要概述:
运行活动(活动1):在特定时间与用户交互的活动位于堆栈的顶部。
活动2开始:新活动开始时,系统将停止上一个活动,并将其推入后退堆栈的较低级别。现在,新活动将成为焦点,并且只要用户与之交互,便会一直如此。
活动1在堆栈中的位置:原始活动(Activity1)恰好位于当前正在运行的活动(活动2)的下方。
活动2被销毁:用户对当前活动(活动2)的处理结束,并且他按了"后退"按钮,原始活动(活动1)进入了前台(在系统销毁正在运行的活动之后)。
回调方法
每当活动在其生命周期阶段经历任何更改时(例如:当正在运行的活动被暂停时),回调方法都会将该更改通知它。
无论活动是被创建,销毁还是正在进行任何其他转换,都有一种回调方法来通知该活动。
对于每个回调,都有一个预定义的行为。
为了确保不同活动之间的平稳过渡,开发人员必须事先实现回调。
我们将在后续的Android教程中讨论有关回调的更多信息。