Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android ViewPager带有多个Fragment类,每个类都有独立的布局文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的应用程序使用 android.support.v4.view.ViewPager类.对于ViewPager中的每个页面,我希望有一个片段,每个片段都有自己的布局文件.每个片段都在自己的文件中定义.我很难实现这一点.澄清一下,有:

1 ViewPager
4个片段文件 – FragmentOne.class,FragmentTwo.class,FragmentThree.class,FragmentFour.class
4个XML布局文件 – frag_one.xml,frag_two.xml,frag_three.xml,frag_four.xml

我见过的例子只涉及一个布局文件.

这是ViewPager所在的FragmentActivity:

public class Main extends FragmentActivity {
    MyAdapter mAdapter;
    ViewPager mPager;

    @Override
    public void onCreate(Bundle savedInstanceStatE) {
        super.onCreate(savedInstanceStatE);
        setContentView(R.layout.main);

        mAdapter = new MyAdapter(getSupportFragmentManager());

        mPager = (ViewPager) findViewById(R.id.pager);
        mPager.setAdapter(mAdapter);

    }

    public static class MyAdapter extends FragmentPagerAdapter {
        public MyAdapter(FragmentManager fm) {
            super(fm);
        }

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

        @Override
        public Fragment getItem(int position) {
            return EditorFragment.newInstance(position);
        }
    }

}

我的主要问题是:如何使用适配器MyAdapter识别四个独立的Fragment文件,并使用ViewPager顺畅地在其中进行页面@L_874_12@?我应该对getItem()做什么样的修改

任何帮助表示赞赏.

编辑:

所以,我尝试了lulumeya提出的建议并想出了这个:

编辑2:是的,那些破坏声明修复了它.它现在有效.感谢所有帮助过的人!现在我有一个很好的隔离,谢谢.

@Override
    public Fragment getItem(int position) {
        Fragment f = new Fragment();

        switch (position) {
        case 0:
            f = FragmentOne.newInstance(position);
                    break;
        case 1:
            f = FragmentTwo.newInstance(position);
                    break;
        case 2:
            f = FragmentThree.newInstance(position);
                    break;
        case 3:
            f = FragmentFour.newInstance(position);
                    break;
        }

        return f;
    }

应用程序推出,这总是一个好兆头,但仍然停留在布局四.当我向右翻页时,对于所有页面,它也是布局四.我肯定会为每个片段更改inflater中的布局.我仍然会继续努力. @lulumeya – 这是你的意思吗?

解决方法

只需按位置在getItem(int position)中返回正确的Fragment实例. 使用switch~case,很容易.

大佬总结

以上是大佬教程为你收集整理的Android ViewPager带有多个Fragment类,每个类都有独立的布局文件全部内容,希望文章能够帮你解决Android ViewPager带有多个Fragment类,每个类都有独立的布局文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。