2011-02-03 83 views
5

嘿人, 我已经快写完我的第一个android应用了。这是一个笔记应用程序添加,编辑视图屏幕等...Android - 哪种效率更高?

最初我通过创建新的布局对象,如表等等,并显示它们处理单个活动中的屏幕之间移动。 但是经过一些阅读后,我改变了在不同屏幕上使用不同活动的屏幕间移动方法。然而,每个被称为intent的活动都会通过setExtra从主活动中检索大量变量,并返回大量变量。

现在我希望我的应用程序尽可能高效,而且我个人认为在一个活动中处理它的所有内容都较少,并且处理器密集型,尽管这具有负面意义变量始终存在(并消耗内存)取消关联在一个单独的活动中他们在完成时被杀死()。 但是你们对我的了解更多,所以你认为最好的办法是做什么?

+0

对于你想做的事很奇怪,你需要在活动之间传递如此多的变量。他们有什么样的变数? “大量”是什么意思? – Dalmas 2011-02-03 16:09:23

+0

您是否真的测量过任何性能问题,您是否获得了ADNR对话框?如果没有,你可能不应该担心表现。 – 2011-02-03 16:24:30

回答

5

如果您为新屏幕启动新的活动,那么您会将该活动添加到堆栈。这样用户可以按回来并返回到之前的活动。只需更改布局即可删除此功能。我很怀疑你会遇到性能问题。

最好的做法是开始一项新的活动,最好的表现可能是使用你当前的方法。

1

您的所有活动都将驻留在同一过程中并运行。所以你没有理由需要传递一堆变量。你可以(例如)把它们粘在代表你的上下文的单例中。当一个活动交给另一个活动时,它填充单身人士,下一个从那里收集数据。

当然,如果您打算通过外部活动与您的内容进行互动,您可能不得不重新考虑这种方法,但我认为您可以将您的观点作为单独的活动来处理。即使内存稍微高一点,我认为最好是正确地做事情,只有在明确需要时才担心优化。