Android 将数据传递到ViewPager中的片段并更新它

Android 将数据传递到ViewPager中的片段并更新它,android,android-viewpager,fragment,bundle,updates,Android,Android Viewpager,Fragment,Bundle,Updates,我遇到了一个问题,我在MainActivity中收到了一些新数据,希望将其传递给ViewPager中的一个片段。我现在能想到的唯一解决方案是用新数据创建一个新的ViewPager适配器。比如: adapter = new ViewPagerAdapter(getFragmentManager(), MainActivity.this, bundle); 在我的ViewPager适配器中,我将进一步向片段传递这个包: @Override public Fragment getItem(i

我遇到了一个问题,我在MainActivity中收到了一些新数据,希望将其传递给ViewPager中的一个片段。我现在能想到的唯一解决方案是用新数据创建一个新的ViewPager适配器。比如:

adapter = new ViewPagerAdapter(getFragmentManager(), MainActivity.this, bundle);
在我的ViewPager适配器中,我将进一步向片段传递这个包:

    @Override
public Fragment getItem(int arg0) {
    // TODO Auto-generated method stub

    switch(arg0){
    case 0: 
        NewBooksFrag newBookFrag = new NewBooksFrag();
        newBookFrag.setArguments(b);
        return newBookFrag;
这种方法的缺点是每次输入新数据时都必须创建一个新适配器。我只是想知道是否有更好的方法

我已经读到了关于

adapter.notifydatasetchange()
这就叫

getitemposition(Object object)
然后我可以实现一个更新对象的接口

但是这个方法的问题是我不知道如何将数据传递给我希望更新的片段


提前谢谢

如果您不知道如何传递数据,请让fragment获取数据。在fragment中,您创建update()函数,该函数从某处获取数据(例如,getData()形成一个类)。更新函数在以下情况下调用:

adapter.notifydatasetchange();
当您覆盖时:

getitemposition(Object object)
该数据将被更新,它还应包括一个字段,用于处理应使用该数据的片段(例如,您可以为每个片段分配一个ID)