Android 扩展FragmentPagerAdapter遇到缺少超级构造函数的问题
今天早些时候,我在PagerAdapter中发布了关于更新幻灯片的信息,并在这里进行了指导: 我曾试图修改我的FragmentPagerAdapter扩展类,以对该页面上的类进行建模,但我的构造函数遇到了一个问题。请参阅下面代码中的注释,了解我收到的错误。我不确定为什么它会在上面的页面上工作,但对我来说不是Android 扩展FragmentPagerAdapter遇到缺少超级构造函数的问题,android,fragmentpageradapter,Android,Fragmentpageradapter,今天早些时候,我在PagerAdapter中发布了关于更新幻灯片的信息,并在这里进行了指导: 我曾试图修改我的FragmentPagerAdapter扩展类,以对该页面上的类进行建模,但我的构造函数遇到了一个问题。请参阅下面代码中的注释,了解我收到的错误。我不确定为什么它会在上面的页面上工作,但对我来说不是 private class ScreenSlidePagerAdapter extends FragmentPagerAdapter { ContestEntriesModel en
private class ScreenSlidePagerAdapter extends FragmentPagerAdapter {
ContestEntriesModel entries;
//this yields an error in eclipse that says "Implicit super constructor
// FragmentPagerAdapter() is undefined. Must explicitly invoke
//another constructor
public ScreenSlidePagerAdapter(ContestEntriesModel Entries) {
this.entries = Entries;
}
@Override
public long getItemId(int position) {
return entries.entries[position].ContestEntryId;
}
@Override
public int getItemPosition(Object object) {
android.support.v4.app.Fragment f = (android.support.v4.app.Fragment)object;
for(int i = 0; i < getCount(); i++){
android.support.v4.app.Fragment fragment = getItem(i);
if(fragment.equals(f)){
return i;
}
}
return POSITION_NONE;
}
@Override
public android.support.v4.app.Fragment getItem(int position) {
long entryId = getItemId(position);
//Log.d("EntryIds",Integer.toString(entryId));
if(mItems.get(entryId) != null) {
return mItems.get(entryId);
}
Fragment f = ScreenSlidePageFragment.create(position);
mItems.put(entryId, f);
return f;
}
@Override
public int getCount() {
return NUM_PAGES;
}
}
私有类ScreenSlidePagerAdapter扩展了FragmentPagerAdapter{
竞赛中心模型条目;
//这会在eclipse中产生一个错误,即“隐式超级构造函数”
//FragmentPagerAdapter()未定义。必须显式调用
//另一个构造器
公共屏幕SlidePagerAdapter(竞赛中心模型条目){
this.entries=条目;
}
@凌驾
公共长getItemId(int位置){
返回条目。条目[position]。竞赛条目ID;
}
@凌驾
public int getItemPosition(对象){
android.support.v4.app.Fragment f=(android.support.v4.app.Fragment)对象;
对于(int i=0;i
我对android/java还是很熟悉,所以我不完全确定这意味着什么。我写这道新题是因为我不想背着上一道题
短暂性脑缺血发作
编辑:我还尝试使用ArrayList完全匹配该示例,但得到了相同的错误。我不确定为什么原始代码实际上没有得到您的错误,但您可以尝试以这种方式更改代码,以修复错误,并调用超级构造函数,正如错误所示: 用此构造函数替换您的构造函数,它应该可以工作:
public ScreenSlidePagerAdapter(FragmentManager fm, ContestEntriesModel Entries) {
super(fm);
this.entries = Entries;
}