如何将视图页的 onPageSelected 传播到片段内的自定义视图



所以我有这样的结构:一个具有Fragments的ViewPager的Activity,在这些Fragments上我有一个自定义视图。每当ViewPager选择其父片段时,自定义视图都需要知道。实施这种行为的最佳方式是什么?

感谢

在您的片段中,您应该编写一个方法来放置您想要的页面的编号

int mCurrent;
Fragment newInstance(int current)
{
    Fragment f = new Fragment();

    Bundle args = new Bundle();
    args.putInt("current", current);
    f.setArguments(args);
    return f;
}
@Override
public void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    mCurrent  = getArguments() != null ? getArguments().getInt("current") : 1;
} 

然后在寻呼机活动中为适配器创建一个内部类,看起来像:

private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter  {
    public ScreenSlidePagerAdapter(FragmentManager fm) {
        super(fm);
    }
    @Override
    public Fragment getItem(int position) {
        return new Fragment().newInstance(mPager.getCurrentItem());
    }

    @Override
    public int getCount() {
        return NUM_PAGES;
    }
    }

就是这样:)

在ViewPager上,设置一个OnPageChangeListener。选择新页面后,调用FragmentPagerAdapter。在FragmentPagerAdapter中,应该保留对包含要更新的视图的Fragment的引用。调用该片段以更新视图。

相关内容

最新更新