【问题标题】:Relation Between Activity and Its Layout in AndroidAndroid中Activity与其布局的关系
【发布时间】:2013-08-24 19:37:49
【问题描述】:

在 Eclipse 中,每当我在我的 Android 应用程序中创建一个新的 Activity 时,除了 Java Activity 类之外,还会生成一个配套的布局 xml 文件。显然,我可以生成 10 个布局,并随时在这 10 个布局之间切换 Activity 的布局。

所以,我的问题是为什么会生成这个布局;它是为了方便而生成的,还是总是有一个与 Activity 关联的特定布局是一种好习惯?

另外,一个 Activity 是否总是必须有一个布局,或者我可以有一个从不使用布局的 Activity。

【问题讨论】:

  • “一个 Activity 是否总是必须有一个布局” - 您的问题表明您并不真正了解 Android Activity 类的概念及其在 Android 中的用途.它的目的是充当 UI 框架,尽管可以通过编程方式为 Activity 创建视图,但通常的方法是使用 XML 布局文件,这使得 UI 设计更加灵活,并允许在其他布局中重用Activities(如有必要)。 Android Activity 类不仅仅是一个标准的 Java 类,没有 UI,它几乎没有用途。
  • 你说得对,因为我不太了解 Activity 类。在过去的几个月里,我学到了很多关于 Android 的知识,但我知道我还有很长的路要走。感谢您的解释;它使它更加清晰。

标签: android eclipse android-layout android-activity mobile-application


【解决方案1】:

来自安卓参考:

活动是用户可以做的单一的、专注的事情。几乎 所有活动都与用户交互,因此 Activity 类采用 为您创建一个窗口,您可以在其中放置您的 UI 设置内容视图(视图)。

这个创建窗口的过程是昂贵的操作,你应该只在你的Activity 中调用 setContentView-once。

  • 如果您觉得需要添加 xml 资源,您可以使用layout inflater。 (提示:始终将容器引用传递给充气器)
  • 如果您觉得需要使用多个布局文件(全新的 ui),您应该考虑创建一个新的Activity

关于您的问题:

所以,我的问题是为什么会生成这个布局;它是为了方便而生成的,还是总是有一个与 Activity 关联的特定布局是一种好习惯?

方便,您正在使用向导来创建 Activity。在大多数情况下,您将为 Activity 实现 XML 资源,因此向导会为您创建它。

另外,一个 Activity 是否总是必须有一个布局,或者我可以有一个从不使用布局的 Activity?

Activity 不需要布局,但会创建一个窗口。这方面的一个示例是启动屏幕 Activity,您在其中显示图像但不设置内容视图。

【讨论】:

  • 感谢您回答我的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-23
  • 1970-01-01
  • 1970-01-01
  • 2015-05-09
相关资源
最近更新 更多