我尝试创建自定义PagerAdapter
,因为我想显示一些页面,其中每个页面都包含ListView
,应由寻呼机适配器构造函数MyPagerAdapter
初始化,收到使用Activity
的{{1}}和字符串ViewPager
列表。
问题是调用entries
的{{1}}似乎无效,列表视图显示为空。
这是我尝试初始化setAdapter(myListAdapter)
:
ListView
有人可以解释我为什么会发生这种情况以及如何解决错误?
ListView
有几页,但在这里我只显示相对于第一页的列表。 答案 0 :(得分:0)
您必须使用 FragmentStatePagerAdapter ,而不是直接使用Pageradapter类中的控制器。即:
public class CustomPagerAdapter extends FragmentStatePagerAdapter {
private ArrayList<String> entries;
private MyFragment myFragment;
public CustomPagerAdapter(FragmentManager fragmentManager, ArrayList<String> entries) {
super(fragmentManager);
this.entries = entries;
}
// Returns total number of pages
@Override
public int getCount() {
return entries.size();
}
// Returns the fragment to display for that page
@Override
public Fragment getItem(int position) {
myFragment = new MyFragment();
final Bundle bundle = new Bundle();
//pass your array list in bundle
myFragment.setArguments(bundle);
return myFragment;
}
// Returns the page title for the top indicator
@Override
public CharSequence getPageTitle(int position) {
return title_of_viewpager;
}
}