活动和布局之间的联系?如何改变布局?如何开始和销毁活动?

时间:2015-02-04 22:05:04

标签: java android xml android-layout

我是Android和Eclipse的初学者,我几乎没有什么问题可以帮助我理解Android的理念:

  1. 活动完成所有工作"幕后工作"。活动连接到XML文件中的布局。活动开始时,如果在setContentView方法中声明,将显示连接的布局。 Activity可以是独立的,没有任何布局,它可以被另一个活动调用,并且可以在不显示任何布局的情况下完成所有工作。 Activity就像一个php文件,由我在HTML中的提交按钮调用,布局是.HTML,显示元素。
  2. 我是对的吗?

    1. 例如,如果我想更改应用的布局,我想在点击Layout2.xml中的按钮时显示Layout1.xml。然后我必须销毁与Layout1.xml相关的活动并启动与Layout2.xml相关的活动?它是否正确?有没有更好的方法呢?

    2. 我怎样(通过哪种方法)销毁/停止某项活动?

    3. 先谢谢你。

1 个答案:

答案 0 :(得分:1)

最好的办法是在http://developer.android.com/reference/android/app/Activity.html

阅读有关活动的Android文档

我会在这里回答您的具体问题

  1. 活动是用户可以看到的窗口(如果没有定义布局,则为隐藏窗口)。它处理用户可以看到和交互的应用程序的一部分的逻辑。如果我们采用MVC模型(模型视图控制器),则Activity是控制器,它控制模型中的哪些数据显示在View(xml布局)上。

  2. 如果要显示新窗口/屏幕/活动,则无需销毁当前窗口/屏幕/活动。您可以打开一个新活动,同时将旧活动保留在后台(在后台堆栈中)。通过使用片段,您可以在活动中拥有多个片段,而不是更改活动,您可以在单个活动中更改片段。有关片段的更多信息,请查看http://developer.android.com/reference/android/app/Fragment.html

  3. 这一点在很大程度上依赖于活动生命周期。当活动被销毁时,这意味着它正在完成,这可以通过用户在活动时按下后退按钮,活动调用完成()本身或由Android操作系统销毁活动来完成,因为其他地方需要内存(这可能在应用程序处于后台时发生。)

  4. 当我们说活动停止时,表示该活动不再对用户可见。这可能是活动位于后台堆栈(另一个活动位于其前面)或者应用程序已被置于后台的情况。

    这是对您的问题的简要回答,但我强烈建议您阅读Android文档以获得更好的知识。