我想从 Activity 创建 FragmentPagerAdapter 适配器。我该怎么做?
当我从一个 fragment 调用时我使用过这种方式,但现在我想从一个 Activity 中调用。
MyActivity.java
// here error
adapter = new FragmentPagerAdapter(getFragmentManager(),
images.getImageItem());
viewPage.setAdapter(adapter);
viewPage.setOnPageChangeListener(this);
FragmentPagerAdapter.java
public class FragmentPagerAdapter extends FragmentStatePagerAdapter {
private ArrayList<String> itemData;
public FragmentPagerAdapter(FragmentManager fm,
ArrayList<String> itemData) {
super(fm);
this.itemData = itemData;
}
@Override
public int getCount() {
return itemData.size();
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
super.destroyItem(container, position, object);
}
@Override
public Fragment getItem(int position) {
FragmentImageView f = FragmentImageView.newInstance();
f.setImageList(itemData.get(position));
return f;
}
}
最佳答案
替换
adapter = new FragmentPagerAdapter(getFragmentManager(),images.getImageItem());
与
adapter = new FragmentPagerAdapter(getSupportFragmentManager(),
images.getImageItem());
getSupportFragmentManager
是FragmentActivity
的方法,不属于Activity
,所以你的Activity类必须实现FragmentActivity
。请注意,您应该导入包 com.support.v4.app.FragmentManager
,而不是 android.app.FragmentManager
。
关于android - 从 Activity 调用 FragmentPagerAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33561257/