【问题标题】:Replacing the Fragment in Tablayout Android替换 Tablayout Android 中的片段
【发布时间】:2019-10-25 04:53:16
【问题描述】:

我在我的项目中使用了 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);
    }

Activity中的接口

@Override
    public void onInput(int input) {

        Here how to replace fragment three


    }

【问题讨论】:

  • 有什么问题???
  • @PankajKumar onInput 方法调用时我想替换适配器中的片段三并刷新片段三的内容
  • 这里输入什么?是指页码吗?
  • @PankajKumar 不只是使用捆绑发送到替换片段的字符串

标签: android android-fragments android-tablayout


【解决方案1】:

我认为替换片段不是一个好主意。所以我想向你展示另一种实现你想要的方法。

  1. viewPager.setCurrentItem(position);可以用这个方法换页。这里的位置是从 0 到总页数 - 1 的页码。
  2. 使用 ViewModal 传递最新数据(在您的情况下 "input")。因此,您可以在此处从onInput(int input) 设置值,并且在 ViewPager 的每个片段中,您可以订阅/取消订阅 ViewModal 以收听更改。这样你就不需要替换fragment了,屏幕上的页面会得到最新的数据并显示出来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    相关资源
    最近更新 更多