Android – 活动与视图

我正在开发一个Android应用程序,该应用程序有多个用户需要浏览的屏幕,我很好奇在这些屏幕之间切换时的最佳做法。 我为每个屏幕创build一个新的活动和简单地改变视图(setContentView(R.layout.whatever))之间撕裂。 所有的屏幕共享至less一些variables值,所以我倾向于改变视图和使用类级别的variables,但我担心单个活动可能会变得非常大,并与单个文件中的多个屏幕的逻辑混淆。 我想保持代码干净和分离,但我也不想在视图之间传递几个variables,如果不需要的话。

作为Android开发的新手,我希望有更多有经验的社区成员分享他们的想法,并让我知道如何最好地处理它。

谢谢!

注意:我并没有打算使用viewflipper。 我的想法是使用button单击事件,然后调用setContentView()到我想下一个页面的新视图。

示例:我的应用程序使用R.layout.main作为视图启动。 用户单击帮助button,并调用运行setContentView(R.layout.help)的方法; 显示帮助屏幕,而不是切换到帮助活动。

Solutions Collecting From Web of "Android – 活动与视图"

您应该使用每个屏幕的活动,因为这将充分利用框架,并允许操作系统select性地closures屏幕。

如果你有一个单一的活动和资源得到紧张的操作系统有两个select, 杀死一切或者什么都不杀,如果用户不使用你的应用程序,那么它很可能会杀死所有的东西。

如果每个屏幕使用一个活动,操作系统可以closures一段时间内用户没有访问的屏幕,同时仍然允许其他用户保持活动状态,从而允许用户快速返回到屏幕上。

至于共享variables和值,您可以使用SQLite数据库或SharedPreferences存储来传递它们(如果它们被广泛共享),或者在Intent中使用putExtra方法(如果它们只用于从一个屏幕到另一个屏幕)。

如果你有variables,你会重用为他们创build一个基类,你会扩展。

这可以是一个扩展Activity自定义Activity

至于我可以告诉你必须为每个视图创build单独的活动,只有几个情况可以由viewflippers处理。