Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – FragmentPagerAdapter – 当用户转到新标签时,如何检测到滑动或标签点击?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有@L_180_1@mainActivity,在FragmentPagerAdapter中有三个片段,如下所示.如何查看用户从第一个片段到第二个片段,或从第二个到第三个,通过滑动或点击标签?我看到getItem()方法总是没有被调用,因为我已经声明了mViewPager.setOffscreenPageLimit(2);
public class MainThreeTabAdapter extends FragmentPagerAdapter {

    private final String[] CONTENT = new String[]{"News","ReWARDs","Me"};

    public MainThreeTabAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        if (position == 0) {
            return NewsFragment.newInstance();
        } else if (position == 1) {
            return ReWARDsFragment.newInstance();
        } else if (position == 2) {
            return MeFragment.newInstance(true,App.getAccountData().getId());
        } else {
            return null;
        }

    }

    @Override
    public CharSequence getPagetitle(int position) {
        return CONTENT[position % CONTENT.length];
    }

    @Override
    public int getCount() {
        return CONTENT.length;
    }
}

在MainActivity的onCreate()

@H_956_2@mainThreeTabAdapter = new MainThreeTabAdapter(getFragmentManager()); // Set up the ViewPager with the sections adapter. // this ensures that 2 tabs on each side of current are kept in memory,which is all we need for our case. Default = 1 // this is all taken from the Quickreturn facebook sample app mViewPager.setOffscreenPageLimit(2); mViewPager.setAdapter(mainThreeTabAdapter);

解决方法

仅在创建视图时调用getItem()方法.要理解为什么getItem()不被调用,它有助于了解ViewPager的认行为.认情况下,当您在ViewPager的特定页面上时,还会创建该特定页面之前和之后的页面.如果你有3个片段被命名,并且按照这个顺序[a,b,c],并且你在第b页,由于ViewPager的认行为,a和c将已经通过调用getItem(int ).因为这些片段已经被创建,所以你不会再调用getItem()

另外:这个行为可以用ViewPager.setOffScreenLimit()修改

用户切换页面时,您实际想要通知的是使用ViewPager.addOnPageChangeListener()OnPageChangeListener设置为ViewPager,以便在选页面时收到通知.

大佬总结

以上是大佬教程为你收集整理的android – FragmentPagerAdapter – 当用户转到新标签时,如何检测到滑动或标签点击?全部内容,希望文章能够帮你解决android – FragmentPagerAdapter – 当用户转到新标签时,如何检测到滑动或标签点击?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。