Android 起航译使用 XML 进行布局虽然纯粹通过 Java 代码在 activity 上创建和添加部件,在技术上是可行的, 我们在第 4章中做的一样,更常见的方法是使用一种基于 XML 的布局文件。动态的小部件实例保留更多,情况复杂,小工具在编译时不为人所知(例如,在数据检索了互联网基础上将单选按钮填充柱。考虑到这一点,现在是时候打破 XML 来学习如何用此种方式来布置 Android activities 。什么是基于 XML 的布局? 正如其名称所示,一个基于 XML 的布局是一个关系到每个规格的小部件,和他们的容器(更多关于此内容的在第 7 章)编码的 XML 格式。具体来说, Android 认为基于 XML 的布局是资源,因此布局文件存储在 res / 在你的 Android 项目布局目录中。每个 XML 文件包含一个指定的部件和容器布局元素树,一种意见认为构成层次。对XML 元素的属性,描述一个部件应如何看或者一个容器应如何运转。例如, 如果一个按钮元素。有一个 Android 的属性值:文字样式=“bold ”,这意味着该文本出现在按钮的表面应该是呈现一个粗体字体样式. Android 的SDK 中附带一个使用的布局的工具(aapt )。这个工具应自动调用你的 Android 工具链(例如,Eclipse 中,Ant ’ )。作为一个开发人员,尤其重要的是,在您的项目中 aapt 生成 源文件,让您能在那些布局中直接从 Java 代码中获取布局和部件。为什么使用基于 XML 的布局? 使用 XML 布局文件做的大部分都可以通过 Java 代码。例如,你可以使用 setTypeface ()命令一个按钮使用粗体文本,而不是在一个 XML 布局中使用属性。由于 XML 布局是为你跟踪的另一个文件,所以我们需要好的理由来使用这样的文件。也许最大的原因是为了在视图定义中协助工具的建立,如IDE 中一个 GUI 创建者像 Eclipse 或者一个像 DroidDraw1 设计 GUI 图形用户界面建设者。这样 GUI 建设者们,在原则上,生成 Java 代码而不是 XML 。目前的挑战是重新阅读用户界面的定义,以支持编辑,也就是说, 如果是像 XLM 的结构公式数据比一个程序语言中的数据简单的多。此外,保持生成的 XML 定义从手写的 Java 代码中分离,使得某人定制的来源意外重新生成不太可能。 XML 形成一个良好的中间立场,使工具作家使用更简便,程序员需要时手工工作更简易。此外,XML 作为一个 GUI 定义格式是越来越普遍。微软的 XAML ,Adobe 的Flex , 和Mozilla 的XUL 都采取 Android 类似的方法:把布局细节放在一个 XML 文件和把编程智慧资料放在源文件(例如, XUL 中的 JavaScript )。许多不太知名的图形用户界面框架,如 ZK ,还使用视图定义的 XML 。而“随大流”并不一定是最好的政策,但他们有优势帮助从任何其他 XML 为中心的观点描述语言轻松进入 Android 。好了,那么基于 XML 的布局是什么样子的? 下面是以前的章节的示例应用程序按钮,转换成一个 XML 布局文件,布局/ NowRedux 示例项目,在这一章中可以找到源代码的 领域。<?xml version="" encoding="utf-8"?> <Button xmlns:android="http://schemas./apk/res/android" android:id="@+id/button" android:text="" android:layout_width="fill_parent" android:layout_height="fill_parent"/> 部件,按钮的类名称形成 XML 元素的名称。因为按钮是 Android 提供的部件,我们可以只使用裸类的名称。如果您创建自己的部件作为 子小部件, 您也将需要提供一个完整的包声明( . )。根元素需要 Android 的XML 命名空间声明: xmlns:android="http://schemas./apk/res/android" 所有其他要素将成为子根并继承该命名空间的声明。因为我们要引用这个来自 Java 代码的按钮,我们需要通过 android 给它一个标识符: id属性。我们将在本章后面更详细的介绍这个概念。其余的属性是此按钮实例属性: ?android :文字表示的初始文本将显示在按钮(这种情况显示空字符串)
毕业设计外文翻译--Android起航 来自淘豆网m.daumloan.com转载请标明出处.