【问题标题】:Best way to display multiple setContentView in Android在 Android 中显示多个 setContentView 的最佳方式
【发布时间】:2011-02-19 13:15:31
【问题描述】:

我对 Android 还很陌生,所以如果这个问题听起来很愚蠢,我深表歉意。

我正在尝试创建一个包含许多课程的出勤应用程序,但其中两个主要是学生和课程。

我计划使用标签来导航,学生和课程是我的 TabHost 中的 2 个标签。

例如,“课程”页面将列出系统中当前的所有课程,并带有用于添加课程的选项菜单,该菜单将显示“添加课程”屏幕(在“课程”选项卡内,但会更改视图)。

所以,对于我的问题...

我计划为选项菜单项设置一个 onclick,它将调用 setContentView 来显示添加新课程布局,而不是启动一个显示新布局的新 Activity。

这听起来是一种明智的做法吗?如果不是,什么是更好的方法?

我所有的课程逻辑都将包含在 Course 类中,因此我希望我的所有代码都包含在其中,而无需为课程列表创建课程/活动、添加课程、查看课程等。

我希望这是有道理的。

【问题讨论】:

  • 我知道对一个activity调用setContentView()两次会抛出异常,

标签: android android-activity


【解决方案1】:

这听起来是一种明智的做法吗?如果不是,什么是更好的方法?

不,这不是明智的做法。您应该打开新活动;这就是安卓的方式。也许您正在尝试模仿不打开新窗口或其他东西的 iPhone 选项卡样式。

如果你仍然想这样做,你最好使用ActivityGroup(那里有教程),恕我直言,使用它很痛苦。

【讨论】:

    【解决方案2】:

    这当然不是一种明智的处理方式。

    但是,您可以使用 ViewFlipper 来更改屏幕布局。这样你就可以留在同一个班级并改变你的屏幕设计。

    http://developer.android.com/reference/android/widget/ViewFlipper.html

    【讨论】:

    • 好的,感谢您的建议,看来我采取了错误的方法。因此,如果我有单独的学生、课程等逻辑类,然后为每个屏幕创建活动,我可以在活动之间传递 Class 对象而不会有太多问题?
    猜你喜欢
    • 1970-01-01
    • 2011-10-07
    • 2016-02-25
    • 1970-01-01
    • 2016-11-28
    • 2018-10-08
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    相关资源
    最近更新 更多