2010-11-16 42 views
3

我有一个非常简单的2屏幕android应用程序。Android setContentView or Intents?

简单地通过setContentView切换布局还是应该使用intents?是否有任何缺点?如果出现这种情况,不想乱搞我的应用程序。

回答

1

以及对Android开发http://developer.android.com/reference/android/content/Intent.html

意向声明提供 进行后期运行在不同的 应用程序的代码之间的结合 的设施。其最重要的用途 正在开展活动, 它可以被认为是活动之间的胶水 。它基本上是一个 被动数据结构,其中包含一个 抽象描述的动作,执行到 。

因此,如果你的两个屏幕是2个不同的应用程序,我会说你想简单地使用setContentView。

将简化你的代码,当你想从一个到另一个观点

1

在单个活动中拥有两个视图没有任何问题。这种方法更加轻量,因为您不需要经历停止一个活动并开始另一个活动的阶段。但是,它会让你的活动代码更笨重。现在考虑如果您将来需要更多的功能或更多的视图,并且如果答案是肯定的,那么创建单独的活动会更好。

0

如果视图是重量轻(一堆文本框)传递信息,那么它不应该的问题。另一方面,如果两个屏幕在很大程度上独立和沉重,您可以使用两种不同的活动。这种方法的主要优点是:

  • 如果在第二屏幕(在这种情况下的活性)的错误,则应用程序将回到第一屏幕,而在使用所述视图的情况下,该整个应用程序崩溃
  • 更好的可读性
  • 更容易在未来
1

另一个要考虑的添加更多的功能是活动形成stack。如果您希望能够通过“后退”按钮返回上一个活动,那么您需要使用活动。但是,如果在应用程序启动时它就像是“加载”屏幕一样简单,并且不必再次返回,则设置内容视图将是一个更好的主意。