片段寻呼机适配器出错

时间:2013-09-21 19:14:36

标签: java android xml

这是我的片段页面适配器。

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;

public class MyFragmentPagerAdapter extends FragmentPagerAdapter {

    private String[] pageTitle = {
            "Page1", "Page2", "Page3"
    };

    public MyFragmentPagerAdapter(FragmentManager fragmentManager) {
        super(fragmentManager);
    }

    @Override
    public Fragment getItem(int position) {
        switch (position) {
        case 0: return new PageFragment();
        case 1: return new PageFragment2();
        case 2: return new PageFragment3();
        }
        Fragment fragment = new PageFragment();
        Bundle arguments = new Bundle();
        arguments.putString("pageIndex", Integer.toString(position + 1));
        fragment.setArguments(arguments);
        return fragment;

   }

    @Override
    public int getCount() {
        return pageTitle.length;
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return pageTitle[position];
    }

}

为什么我在这一行中出错:case 0:return new PageFragment();和Fragment fragment = new PageFragment();错误是“类型不匹配:无法从PageFragment转换为Fragment”如何修复?是否可以使它(Viewpager)与Android 2.2或2.3兼容?

1 个答案:

答案 0 :(得分:0)

PageFragment应扩展Fragement或其他Fragment类(例如ListFragment)。您尚未发布PageFragment的代码,因此很难说。

此外,我们了解到您只有3个页面,因此getItem中的代码无效,因为它始终会返回switch的一个案例,switch之后的代码将会返回永远不会到达。

相关问题