【问题标题】:What is better to use for creating layouts. Java or XML?什么更好用于创建布局。 Java 还是 XML?
【发布时间】:2015-02-19 23:44:17
【问题描述】:

我是 Android 的新手,正在开发一个新应用程序。

我在XML 文档中创建了一些布局,这些布局恰好相当大。我知道如果我使用 Java 循环创建布局,我可以节省大量空间,但另一方面,布局可能不需要经常更改。

什么是更好的性能明智? Java 代码还是 XML 布局?

【问题讨论】:

  • XML 被预编译并转换为二进制格式。不会有显着的性能差异。使用任何你觉得更舒服的东西或两者兼而有之。
  • @LukasKnuth 您应该将其发布为答案,因为它听起来不错。
  • @Michael 问题已结束。另外,这里的评论很好。
  • 似乎是一个完全合理的问题,可以客观地回答。投票重新开放。
  • 当然,在使用 XML 时,Android 会根据屏幕大小、密度等自动为您选择布局。完全有效的问题。

标签: java android xml


【解决方案1】:

大多数时候我更喜欢layout XML resource 文件,但它会根据需要而有所不同。

  1. 首先,资源集(例如,res/layout-land/res/layout/)允许您定义在不同情况下使用的多个 UI。

    • layout-land -> 用于横向

    • layout-port -> 纵向

    • layout-v15 -> 安卓版本 >= 15

    • layout-sw600dp -> 用于特定宽度的屏幕

  2. 其次,有一些工具可以帮助您成功创建这些布局资源。 Eclipse的拖放式GUI构建就是其中之一。

  3. 第三,它往往更简洁,所以如果你手动输入这些东西,XML 会减少输入。

  4. 在 Java 代码中,您必须编译并运行代码才能查看布局的外观,而在 XML(如果您使用 eclipse)中,您可以使用 eclipse 提供的工具直接查看。

对于所有静态的我都使用 XML,因为它很容易在你的项目结构中找到。

但在某些情况下,您想要创建动态布局,而您别无选择,只能使用 Java 代码。在这方面要聪明,所以如果您必须添加几个看起来相同的视图,请执行此操作

从我的角度来看,xml layouts 很好,如果你想让 android 自动处理布局。这将适用于类似的事情 数据输入类型的应用程序(如银行应用程序)。 Java 布局 对于需要严格控制 UI 的应用程序会更好 (像愤怒的小鸟)

【讨论】:

  • 非常感谢。这是一个非常好的答案。但是什么会更快?由 XML 或 Java 创建的布局?
  • 我认为两者之间可能没有任何性能差异。但是对于您而言,使用 xml 会更容易和更快(请参阅第 2 点和第 4 点)。大多数情况下,最好使用 xml 布局,但这完全取决于您。但是,如果您要动态获取数据并将其设置在单独的布局中,那么您可以使用 java 布局。此外,Java 布局主要用于游戏应用程序,您需要对 UI 进行严格控制。
猜你喜欢
  • 1970-01-01
  • 2011-01-02
  • 2017-12-26
  • 1970-01-01
  • 1970-01-01
  • 2012-03-12
  • 2011-09-28
  • 2013-06-24
  • 2021-11-07
相关资源
最近更新 更多