android - 我怎样才能得到 FragmentPagerAdapter 的当前 fragment

标签 android fragment fragmentstatepageradapter

public class FolioPageFragmentAdapter extends FragmentStatePagerAdapter{
    private List<SpineReference> mSpineReferences;
    private Book mBook;
    private String mEpubFileName;
    private boolean mIsSmilAvailable;
    private FolioPageFragment mFolioPageFragment;

    public FolioPageFragmentAdapter(FragmentManager fm, List<SpineReference> spineReferences,
                                    Book book, String epubFilename, boolean isSmilAvilable) {
        super(fm);
        this.mSpineReferences = spineReferences;
        this.mBook = book;
        this.mEpubFileName = epubFilename;
        this.mIsSmilAvailable = isSmilAvilable;
    }

    @Override
    public Fragment getItem(int position) {
        mFolioPageFragment = FolioPageFragment.newInstance(position, mBook, mEpubFileName, mIsSmilAvailable);
        return mFolioPageFragment;
    }

    @Override
    public int getCount() {
        return mSpineReferences.size();
    }


    public FolioPageFragment getCurrentFragment(){
         return mFolioPageFragment;
    }
}



 It   doesn't   give   me   the   correct   current   fragment.  

有什么办法可以让我得到当前的 fragment 。 我已将 FragmentPagerAdapter 更改为 FragmentStatePagerAdapter。 以下方法不提供当前 fragment 。 Evert 创建实例时,我将其存储在全局变量中,但它对我不起作用。

private Fragment getFragment(int pos) {
        return getSupportFragmentManager().
                findFragmentByTag("android:switcher:" + R.id.folioPageViewPager + ":" + (pos));
    }

最佳答案

这可能行不通,因为 getItem() 可以返回下一个/上一个 fragment 。尝试制作 fragment 数组,将创建的 fragment 存储在那里并从当前数组中检索。

关于android - 我怎样才能得到 FragmentPagerAdapter 的当前 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41099114/

相关文章:

java - 无法解析我的类 Android-Studio 的符号

android - 如何将响应 json 字符串图像转换为可显示图像

java - 带复选框的 fragment 中的 NullPointEreException

android - ViewPager 中的滑动方向

java - 如何在 FragmentStatePagerAdapter 中循环(从最后一个 fragment 到第一个 fragment )

android - 如何清除 fragment 后台直到指定 fragment ?

android - 从上到下移动 TextView

安卓应用程序更新通知

android - 启动结果对话框以将值返回到主要 Activity

fragment 中的 Android onActivityResult