界面组件Activity解析

界面组件ActivityWeb页面对比的相似之处:

运行模式:web是通过链接跳转,多页面时仅有一个页面对用户可见;Android是多任务系统,可同时运行多个任务,每个任务是一个界面组件;

Web页面有一个URL对应,页面切换和数据传输需要通过服务器,Android也是通过类型信息、数据RUI、数据类型信息进行定位。界面切换和数据传输依赖于组件管理服务。

Android界面组件和Web页面军尉黑盒,主要取决于用户输入。Web开发中通过Cookie缓存信息,Android通过应用环境对象Application Context存储小数据。

Android系统将资源预编译,生成R.java文件。相当于资源的目录表。通过R.java定位资源。

界面组件处理交互事件:界面的全局事件通过重载Activity的方法实现,和具体控件相关的交互:Android控件采用了观察者模式,通过添加监听事件处理交互。

频繁构造交互界面很耗时,Android提供了延迟构造框架,以减少辅助构造交互界面的次数。如用户在查看界面的选项菜单时,界面组件会调用Activity.onCreateOptionsMenu()创建菜单对象,构造出来的对象被缓存,等待下次调用。每次展示给用户前,界面组件还会调用Activity.onPrepareOptionsMenu(),开发者可以在此函数中调整菜单状态。

Android进程采用进程托管策略,后台的应用进程在内存紧张时会被终止,直至该应用被切换到前台时,才再次构造运行。

Android界面组件在运行时,通过任务进行组织。同一任务中的界面组件会按照栈模型线性排列。

更多相关文章

  1. 安全新手入坑——HTML标签
  2. Nginx系列教程(四)| 一文带你读懂Nginx的动静分离
  3. Android开发问题之布局(layout)文件图形界面不能显示
  4. 最佳的免费移动设备的原型模板文件下载
  5. tabHost研究二 ,android应用中,大部分的软件都会采用把按钮放在底
  6. Android之启动页优化
  7. Android(安卓)UI规范,就这么不受待见吗?
  8. Android(安卓)中 BroadcastReceiver以及 Broadcast的简单应用
  9. Android的五大基本组件

随机推荐

  1. 只会爬虫不会反爬虫?动图详解利用 User-Ag
  2. 学习C的第三天-if语句
  3. Linux学习之常用的Linux文件内容查看命令
  4. 爬虫又报错了?用 Scrapy 来一发邮件不就好
  5. Python开发必知的6个基本库!
  6. Python常用的数据存储方式有哪些?五种!
  7. 前端要知道的Linux 的 RPM 和 YUM 包管理
  8. 一看就懂!通过英雄联盟锐雯详解 Python 设
  9. K8s 平台可以如何处理 Pod 预授权问题
  10. 学习C的第三天-while语句