Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在FragmentPagerAdapter中实现FragmentActivity?_Android_Listview_Android Activity_Listactivity - Fatal编程技术网

Android 如何在FragmentPagerAdapter中实现FragmentActivity?

Android 如何在FragmentPagerAdapter中实现FragmentActivity?,android,listview,android-activity,listactivity,Android,Listview,Android Activity,Listactivity,我的类中有一个部分,用于处理FragmentPagerAdapter要加载的片段。现在它可以很好地加载片段,但是现在我想实现一个FragmentActivity,我在想如何创建它时遇到了一个问题,因为我不能使用“newinstance”,因为它是活动类型,而且最重要的是,我不知道如何调用FragmentActivity,因为它不同于通过“newinstance”方法加载片段。我的第二个选项卡是我希望扩展到FragmentActivity的选项卡 public class SectionsPage

我的类中有一个部分,用于处理FragmentPagerAdapter要加载的片段。现在它可以很好地加载片段,但是现在我想实现一个FragmentActivity,我在想如何创建它时遇到了一个问题,因为我不能使用“newinstance”,因为它是活动类型,而且最重要的是,我不知道如何调用FragmentActivity,因为它不同于通过“newinstance”方法加载片段。我的第二个选项卡是我希望扩展到FragmentActivity的选项卡

public class SectionsPagerAdapter extends FragmentPagerAdapter {
    private Context _context;
    public SectionsPagerAdapter(FragmentManager fm) {
        super(fm);
        _context= getApplicationContext();
    }

    @Override
    public Fragment getItem(int i) {

        Fragment f = new Fragment();

        switch(i){
        case 0:
            f=News.newInstance(_context);
            break;  
        case 1:
            f=Info.newInstance(_context);
            break;
        case 2:
            f=Files.newInstance(_context);
            break;
        case 3:
            f=Donate.newInstance(_context);
            break;
        }
        /*

        Fragment fragment = new DummySectionFragment();
        Bundle args = new Bundle();
        args.putInt(DummySectionFragment.ARG_SECTION_NUMBER, i + 1);
        fragment.setArguments(args);

       */
        return f;
    }

    @Override
    public int getCount() {
        return 4;
    }

    @Override
    public CharSequence getPageTitle(int position) {
        switch (position) {
        case 0: return getString(R.string.title_section1).toUpperCase();
        case 1: return getString(R.string.title_section2).toUpperCase();
        case 2: return getString(R.string.title_section3).toUpperCase();
        case 3: return getString(R.string.title_section4).toUpperCase();
        }
        return null;
    }
}
我的猜测是,我不能使用getitem方法,因为它只用于切换片段,我必须使用类似以下的方法:

FragmentTransaction ft = fm.beginTransaction();
            ft.add(R.id.fragment_content, new BasicFragment());
            ft.commit();
有人能帮我指出正确的方向吗

有人能帮我指出正确的方向吗


这是不受支持的。当然不可能使用只适用于片段的
FragmentPagerAdapter

我同意,我认为您需要将FragmentActivity转换为一个片段。但是该活动必须是一个FragmentActivity,因为需要设置一些只有将其扩展到FragmentActivity@user1811306:您不能将活动放入
查看页面
。包含
ViewPager
的活动可以是
FragmentActivity
,如果
ViewPager
将包含片段,则需要是
FragmentActivity