6

为什么在 Android 编程中不能使用 HTML 来构建界面?

4

5 回答 5

6

XML 使我们能够创建自定义标签。考虑到我们创建了一个自定义视图,我们可以从 xml 本身引用它们。所以 UI 与逻辑分离的想法保持不变。

于 2012-10-22T07:16:33.067 回答
1

HTML 是一种旨在显示网页的标准。android XML 布局文件是旨在由 dalvik VM 解析的自定义配置文件。两个独立的世界。这里有一些不使用 HTML 来定义配置的好理由。

  1. HTML 格式不正确。解析是一种痛苦。没有模式检查。
  2. 你将如何设计元素?CSS?
  3. 让 CSS 跨多个浏览器工作已经够难的了。
  4. 您将如何在 HTML 配置中引入自定义元素?

我可以继续。使用 HTML 配置本机 UI 是没有意义的。

于 2012-10-22T07:35:01.363 回答
0

可扩展标记语言,可扩展部分使其更加通用。HTML 基本上是专门用于 Web 浏览器的 XML 一般概念的实现。

此外,对于创建布局的简单任务,它过于臃肿,因为它包含许多定义元素行为的标签和属性(即methodonclick等),而不仅仅是它们的布局。

于 2012-10-22T08:18:07.583 回答
0

我认为他们有几个原因:

  • 当您分别拥有布局源代码时,您可以分离您的应用程序逻辑。因此,许多 XML 文件可以与一段源代码绑定,并且平台(Android、Windows Phone 等)将根据例如:屏幕密度屏幕方向等 自动选择适当的 XML 布局。
  • 接下来是回答你的问题:为什么不是 html。在我看来,原因很少。最重要的是 XML 具有严格的格式良好的结构,并且可以使用XML Schema来限制XML 。事实上,拥有 XML Schema 非常棒,因为它不仅限制了您的文档,而且还提供了一种XML 内部文件的文档。读到这里的人可能会想:HTML 也可以像 XHTML 规范一样具有严格的结构。是的,但 XML 就是为此而设计的。
  • 下一个方面是 XML 在配置/布局(Java EE、XAML、Android XML 等)中作为 HTML 更受欢迎。这就像一个很好的练习。
  • 事实上,您几乎可以用 HTML/JavaScript 构建您的应用程序,但您需要使用一些特定的框架来包装您的平台应用程序并将其转换为 Platfrom 独立 Web 应用程序(例如 Sencha 框架)
于 2012-10-22T07:28:12.417 回答
0

我认为选择xml是因为xml标签是在android中根据UI框架类定义的,属性是对应UI框架中类的成员变量定义的。html 无法进行此映射。

于 2012-10-22T07:17:02.183 回答