【问题标题】:How to go from an Activity to a specific Fragment inside a TabActivity?如何从 Activity 转到 TabActivity 中的特定 Fragment?
【发布时间】:2018-06-23 13:29:13
【问题描述】:

我已经在这个问题上工作了几个小时,但仍然无法弄清楚。 我有一个带有几个选项卡的 MainActivity,它们都链接到它们自己的片段。选项卡及其片段都运行良好。

具有不同选项卡(片段)的主要活动:

当我切换到第二个选项卡时,您可以看到一个按钮。

MainActivity 和 Tab2(Fragment1):

通过“Theorie”按钮导航到 SecondActivity。

第二个活动:

现在有以下问题。我想回到 MainActivity 中的 Tab2。但是因为这是 MainActivity 的第二个片段,所以我总是使用以下代码仅转移到 MainActivity 中的第一个选项卡“Home”。

`

ImageView homebtn = (ImageView) findViewById(R.id.homebtn);
 homebtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(getApplicationContext(),MainActivity.class);
                startActivity(intent);
            }
        });

`

我真的不知道,我如何才能通过 homebtn 到达第二个 Fragment “Tab2”,而不是 MainActivity 中的第一个 Fragment “Home”。当我对这个问题进行研究时,我只找到了如何将数据从一个片段传输到另一个片段或如何从 MainActivity 到它的片段的解决方案。我找不到针对我的具体问题的任何解决方案。

如果您对我如何解决这个问题有任何建议,我将非常感激:)

问候 克里斯

【问题讨论】:

    标签: android android-fragments android-intent android-activity android-fragmentactivity


    【解决方案1】:

    当你要去第二个活动时,不要完成第一个活动。在主页按钮上只需使用这个:-

    finish(); 
    

    而不是:-

    Intent intent = new Intent(getApplicationContext(),MainActivity.class);
    startActivity(intent);
    

    您正在完成流程中的第一个活动并开始一个新的活动,这会重置所有内容。 希望这会有所帮助。

    【讨论】:

    • 嗨 Sarthak Gandhi 非常感谢您的回答。它现在正在工作。我只是想问你,是否还有另一种方法可以将Tab2 Fragment返回到Tab3 Fragment?也不是关闭第一个活动非常占用内存吗?
    • 是的,您可以在返回时使用 startActivityForResult() 模式转到选项卡 3。不,将活动保持在后台不会占用大量内存。
    猜你喜欢
    • 1970-01-01
    • 2019-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-26
    • 2021-03-27
    • 1970-01-01
    相关资源
    最近更新 更多