Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.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 Kotlin中碎片内部的材料成分表_Android_Android Fragments_Kotlin_Android Tablayout_Material Components Android - Fatal编程技术网

Android Kotlin中碎片内部的材料成分表

Android Kotlin中碎片内部的材料成分表,android,android-fragments,kotlin,android-tablayout,material-components-android,Android,Android Fragments,Kotlin,Android Tablayout,Material Components Android,我正在使用Kotlin和Material Components()开发一个应用程序。我试图在片段中使用TabLayout(),我想使用这个TabLayout打开片段 在我的活动中,我有一个底部导航。这个底部导航打开了一个片段,在这个片段中是我的TabLayout和一个ViewPager。我想在此ViewPager中打开一个片段(或者我可以将此ViewPager替换为ContentFrameLayout或类似内容) 因此,顺序是: 活动->片段(通过底部导航)->片段(通过表格布局) 如何才能做到

我正在使用Kotlin和Material Components()开发一个应用程序。我试图在片段中使用TabLayout(),我想使用这个TabLayout打开片段

在我的活动中,我有一个底部导航。这个底部导航打开了一个片段,在这个片段中是我的TabLayout和一个ViewPager。我想在此ViewPager中打开一个片段(或者我可以将此ViewPager替换为ContentFrameLayout或类似内容)

因此,顺序是: 活动->片段(通过底部导航)->片段(通过表格布局)


如何才能做到这一点?

您必须使用childFragmentManager添加第二层片段(片段内部的片段)

在底部导航单击的活动中,您可以使用片段管理器添加带有Tablayout的片段

supportFragmentManager.beginTransaction().replace(R.id.fragment_container,YourFragmentWithTablayot)
要在TableLayout-viewpager上添加第二级片段,请使用ChildFragmentManger设置viewPagerAdapter

ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager());
viewPager.setAdapter(adapter);
ViewPagerAdapter是扩展FragmentAdapter的自定义适配器类

//适配器代码示例

    public class ViewPagerAdapter extends FragmentPagerAdapter {


    public ViewPagerAdapter(FragmentManager fm) {


        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        return null;
    }

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

您必须使用childFragmentManager添加第二层片段(片段内部的片段)

在底部导航单击的活动中,您可以使用片段管理器添加带有Tablayout的片段

supportFragmentManager.beginTransaction().replace(R.id.fragment_container,YourFragmentWithTablayot)
要在TableLayout-viewpager上添加第二级片段,请使用ChildFragmentManger设置viewPagerAdapter

ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager());
viewPager.setAdapter(adapter);
ViewPagerAdapter是扩展FragmentAdapter的自定义适配器类

//适配器代码示例

    public class ViewPagerAdapter extends FragmentPagerAdapter {


    public ViewPagerAdapter(FragmentManager fm) {


        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        return null;
    }

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

将子片段一中的viewPager与底部导航一起使用,然后使用childFragmentManager实现它。将子片段一中的viewPager与底部导航一起使用,然后使用childFragmentManager实现它。