0
使用ViewPager。为适配器PageStateAdapter调用notifyDataSetChanged()方法,更新所有页面。它如何只更新ViewPager中的当前页面?仅更新ViewPager中的当前页面
onCreateView:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View myView = inflater.inflate(R.layout.my_layout, container, false);
MyPageAdapter myAdapter = new MyPageAdapter(getChildFragmentManager(), true);
ViewPager myPager = (ViewPager) myView.findViewById(R.id.my_pager);
myPager.setAdapter(myAdapter);
myPager.setCurrentItem(0);
}
PageAdapter:
//
private class MyPagerAdapter extends FragmentStatePagerAdapter {
private MyFragment[] fragments;
public MyPagerAdapter(FragmentManager fm) {
super(fm);
fragments = new MyFragment[] { new Fragment1(), new Fragment2(), new Fragment3() };
}
@Override
public Fragment getItem(int i) {
return fragments[i];
}
@Override
public int getCount() {
return fragments.length;
}
@Override
public void restoreState(Parcelable state, ClassLoader loader) {
}
}
//
使用'setTag()'方法来设置标签对于特定的页面,然后使用'findViewWithTag()'来标识页面。 – dreamcoder
如果你编写代码来做这件事,我将不胜感激,我已经花了很多时间,但不明白它是如何写的。请。 –