• Activity,安卓应用的“页面”

    基本功能单元
    服务器君一共花费 18.506 ms 进行了 4 次数据库查询,努力地为您提供了这个页面。
    广告很萌的

    使用手机的大多数时候,你会停留在某一个“页面”,比如和恋人的对话页面、切水果页面、相机的取景页面。用安卓的术语讲,页面是一个Activity,它是一个占据整个屏幕的界面。用户和手机可以通过Activity交流。页面,也就是Activity,是手机应用中如此常见的概念,以至于用户有时会忽视它们的存在,就像那些无比普通的小步兵。

    观察这些页面,我们会发现一些共同点:

    • Activity包含一些特别的视觉元素,比如一个竖直列表、一个彩色的背景或者一个小小的按钮。
    • Activity呈现各种信息,比如图片、文字、输入栏等等。静态信息之外,Activity也可以播放动态的动画或视频。
    • 用户可以与Activity互动,输入信息、点击按钮、上下滑动,而Activity会根据这些互动动作,触发特定的效果。

    一个应用往往包含多个页面。在某些情况下,我们会从当前Activity离开,激活并前往下一个Activity。

    在联系人条目菜单的页面上,点击某个联系人,进入一个新的页面,这个新的页面上包含该联系人的具体信息;再点击返回键,我们退出了包含具体信息的页面,又回到联系人条目菜单的页面上。

    应用的进程空间中有一个(stack),用来记录我们依次激活的各个Activity。新激活的Activity被压入到栈的顶端。在手机屏幕上,我们只能看到栈顶的这个Activity,也只能和该Activity互动。当我们点击返回键时,当前Activity结束,从栈中弹出。上一个被激活的Activity出现在栈顶,重新占领手机屏幕。这也就是我们按返回键时,能回到历史页面(联系人条目菜单)的原理。  

    正如默默守卫的小步兵,Activity也总是处于一种相对静止的某个状态,比如运行、暂停、停止等。

    Activity的许多功能,都是在状态切换中完成的。状态转换过程中执行的命令,都是程序员预设好的,包含在特定的方法中。比如一个Activity从未激活状态到运行状态的过程中,会自动执行Activity对象的onStart()方法。安卓程序员在该方法中,设计Activity在目标状态的效果:实现特定的页面布局,为按钮注册回调函数,访问互联网获取信息等。再比如,Activity从暂停到恢复的状态,会执行onRestart()方法。安卓程序员可以在该方法中,实现诸如调整亮度和弹出提示之类的功能。这正如小兵在平时训练时,预设了切换过程中要做的事情。小兵从一个状态进入到另一个状态,比如从“警戒”到“预备射击”。在该状态过程中,士兵执行预设动作,即装填子弹,随即进入射击待命状态。

    Activity的状态与转换方法

    有趣的是,一个安卓的Activity与互联网上的一个Web页面非常相似。它们都是充斥屏幕的页面,包含视觉元素和信息。用户可以通过这样的页面实现某些功能。就连这些界面的编写方式,也有相似之处:安卓用XML设计一个页面,而Web用HTML设计一个页面。你甚至于可以把一个应用直接看做包含了多个页面的小型网站。

更多 推荐条目

Welcome to NowaMagic Academy!

现代魔法 推荐于 2013-02-27 10:23   

本章最新发布
随机专题
  1. [移动开发] Android加载器Loaders 5 个条目
  2. [运维管理] 路由器与交换机 4 个条目
  3. [移动开发] Android 网络通信框架Volley 1 个条目
  4. [Python程序设计] Django后台管理系统 2 个条目
  5. [移动开发] 从代码角度去认识 Handler 4 个条目
  6. [移动开发] Android里的ContentValues 2 个条目
  7. [C语言程序设计] 结构体基本知识 1 个条目
  8. [搜索引擎优化] 百度搜索引擎优化指南 3 个条目
  9. [PHP程序设计] PHP里的引用 5 个条目
  10. [数据结构] 图的定义 1 个条目
  11. [Python程序设计] 标准库:urllib/urllib2 14 个条目
  12. [数据库技术] SQL基础语法 1 个条目
窗口 -- [协会]