Android:导航抽屉片段内的Viewpager

All*_*hun 7 navigation android android-layout android-fragments android-viewpager

我正在开发一个Android应用程序,我需要的是在导航抽屉的一个片段中实现一个Viewpager或Tabs.我已经在本教程中实现了导航抽屉:导航抽屉教程

现在我的导航抽屉由3个片段组成. 片段A,片段B,片段C.

片段A我怎么可以添加一个Viewpager对该片段?

dab*_*uck 10

这绝对是可能的.您只需要为viewpager使用子片段.除此之外,实施是直截了当的.创建自定义寻呼机适配器,使用标准viewpager api

像这样扩展FragmentPagerAdapter:

private class MyPagerAdapter extends FragmentPagerAdapter
{
    public MyPagerAdapter (FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int i) {
        switch (i) {
            case 0:
                return Fragment1;
            case 1:
                return Fragment2;

        }
    }

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

    @Override
    public CharSequence getPageTitle(int position) {
        switch (position) {
            case 0:
                return FRAGMENT_1_NAME;
            case 1:
                return FRAGMENT_2_NAME;



        }
    }
Run Code Online (Sandbox Code Playgroud)

当然,你需要一个带有viewpager的布局,然后确保在Fragment A中将它连接起来:

myPagerAdapter = new MyPagerAdapter(this.getChildFragmentManager());
myPager = (ViewPager) mRoot.findViewById(R.id.pager);
myPager.setAdapter(myPagerAdapter);
Run Code Online (Sandbox Code Playgroud)

请注意,除非最低SDK为4.2或更高,否则您将需要使用支持库和支持片段,因为子片段是API 17


Mar*_*arc 0

有一个 ViewPager 类是支持库的一部分。您应该能够将其与 PagerAdapter 一起使用。