【问题标题】:Open a specific fragment of activity A from activity B从活动 B 打开活动 A 的特定片段
【发布时间】:2013-01-17 08:44:32
【问题描述】:

又来了!

情况是这样的,我有:

实现 viewPager 并可视化 3 个可能的片段的 Activity A。要访问每个片段,我使用以下代码:

    @Override
    public Fragment getItem(int page) {
        switch (page) {
            case 0: return new MyFirstFragment();
            case 1: return new MySecondFragment();
            case 2: return new MyThirdFragment();
        }
        return null;
    }

    @Override
    public int getCount() {
        return [the count of total fragments];
    }

片段 3 包含用户列表。当我单击用户时,活动 B 开始。使用意图:

// Create new Intent Object, and specify class
Intent intent = new Intent();
intent.setClass(Fragment3.this, ActivityB.class);
//Use startActivity to start Activity B
startActivity(intent);

在活动 B 中,有一个按钮将我重定向到片段 2。所以问题是:我怎样才能返回看到片段 2?我正在考虑重新开始活动 A 并使用 putExtra 来指定应该可视化哪个片段。

例如,我将传递一个数字,在这种情况下为 2,并想调用函数 Fragment getItem(2) 来可视化片段。但是,Fragment getItem 包含在 pageadapter 类中,所以我不清楚如何进行。

【问题讨论】:

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


    【解决方案1】:

    我终于自己找到了解决方案:)

    我使用intent.putExtra() 来传递我想要显示的片段的位置,然后在被调用的活动中我使用ViewPager 的setCurrentItem(position) 方法并显示想要的片段。

    希望这可以帮助遇到我同样问题的其他人!

    【讨论】:

    • 感谢您的快速破解!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-26
    • 2019-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多