在Tablayout Android中替换片段

问题描述 投票:0回答:1

我在项目中使用了布局。我必须替换tablayout中的片段。代码如下所示

活动类别

private void setupViewPager(ViewPager viewPager) {
        ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());




        adapter.addFragment(Fragment1, "One");
        adapter.addFragment(Fragment2, "Two ");
        adapter.addFragment(Fragment3, "Three");
        viewPager.setAdapter(adapter);
    }

活动界面

@Override
    public void onInput(int input) {

        Here how to replace fragment three


    }
android android-fragments android-tablayout
1个回答
0
投票

我认为替换片段不是一个好主意。因此,我想向您展示实现所需目标的另一种方法。

  1. viewPager.setCurrentItem(position);,您可以使用此方法更改页面。这里的位置是页码,从0到总页数-1。
  2. 使用ViewModal传递最新数据(在您的情况下"input")。因此,您可以在onInput(int input)中设置值,并且在ViewPager的每个片段中,您可以订阅/取消订阅ViewModal以监听更改。这样,您无需替换片段,屏幕上的页面将获得最新数据并可以显示。
© www.soinside.com 2019 - 2024. All rights reserved.