Android 仅显示新屏幕所需的新活动?

Android 仅显示新屏幕所需的新活动?,android,android-activity,Android,Android Activity,我正在尝试为我的Android应用程序创建应用程序内帮助屏幕。“帮助”活动由用户从“选项”菜单中选择“帮助”创建。第一个屏幕显示帮助类别的列表 当用户单击某个类别时,我希望他们进入一个新屏幕,显示该类别的详细信息 我希望保留后退按钮功能,我知道(我想!)如果我为每个类别的详细信息创建了一个新的活动,它会很好地工作 但是,是否每个子类别都有一个活动过度杀伤力 肯定是过火了,除非你真的想在活动改变上有一个整洁的动画FrameLayout是您的朋友。为什么不让一个活动显示子类别,子类别活动。启动此活动

我正在尝试为我的Android应用程序创建应用程序内帮助屏幕。“帮助”活动由用户从“选项”菜单中选择“帮助”创建。第一个屏幕显示帮助类别的列表

当用户单击某个类别时,我希望他们进入一个新屏幕,显示该类别的详细信息

我希望保留后退按钮功能,我知道(我想!)如果我为每个类别的详细信息创建了一个新的活动,它会很好地工作


但是,是否每个子类别都有一个活动过度杀伤力

肯定是过火了,除非你真的想在活动改变上有一个整洁的动画
FrameLayout
是您的朋友。

为什么不让一个活动显示子类别,子类别活动。启动此活动时,请传入一个额外的值,让它知道要显示哪个子类别(int或string)


如果所有这些类别的UI都彼此非常不同,则可能无法正常工作

对于子类别,您是否可以使用对话框而不是活动?如果没有,就用斯加曼的解决方案。创建一个“HelpActivity”,在启动intent时将帮助内容作为附加内容传递到其中。

如果要重用同一活动,最好的做法是:1)创建一个活动(例如HelpActivity),并设计其布局,如textview、button等,但不要设置textview值

2) 对于帮助类别列表中的所有类别,请每次调用帮助活动

3) 使用以下代码检查调用活动:为所有活动分别创建一个接口和声明活动常量,如:

公共接口活动Constants{

 public static final int callingACTIVITY1 = 1001;
 public static final int callingACTIVITY2 = 1002;
 public static final int callingACTIVITY3 = 1003;
} //然后识别呼叫活动

int callingActivity=getIntent().getIntExtra(“调用活动”,0)

等等

3) 如果您想在用户阅读帮助说明后返回调用活动,请使用 super.onBackPressed()//这将带您回到您的呼叫活动

希望这对你有帮助

    switch(callingActivity)
    {
    case ActivityConstants.callingACTIVITY1:

        // do your stuff here
                    // set textview value based on callingACTIVITY1  
        break;