其他分享
首页 > 其他分享> > android-如何从一个片段传递到另一个

android-如何从一个片段传递到另一个

作者:互联网

在我的应用程序中,我有一些片段的导航抽屉.当我在抽屉中选择时,请执行以下代码:

FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.container, f, tag);
ft.commit();

在MainActivity中.

现在,在一个片段中,我想在屏幕底部放置一个TabLayout,但遇到了以下麻烦:

>是否可以从一个片段替换为另一个片段?我可以在哪里放置fragmentTransaction?
>如果我想调用第三个片段(例如此选项卡片段之一中的“发送”按钮),我可以为该选项卡使用相同的功能吗?

谢谢你的回答

解决方法:

你可以这样…

//when navigation item is selected by user
    @Override
    public void onDrawerItemSelected(View view, int position) {
        displayView(position);
    }

    public void displayView(int position) {
        String title = getString(R.string.app_name);
        switch (position) {
            case 0:
                fragment = new UserProjectListFragment();                    
                break;
            case 1:
                fragment = new ContactUsFragment();
                break;
            case 2:
                fragment = new HelpFragment();
                break;
            case 3:
                //and so on

                break;

            default:
                break;
        }
        if (fragment != null) {
            FragmentManager fragmentManager = getSupportFragmentManager();
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
            fragmentTransaction.replace(R.id.container_body, fragment).addToBackStack("fragBack");
            fragmentTransaction.commit();
            // set the toolbar title
            getSupportActionBar().setTitle(title);
        }
    }

/对于您的问题,是否可以将一个片段替换为另一个片段?我可以在哪里放置fragmentTransaction?

像这样

Fragment videoFragment = new VideoPlayerFragment();
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
transaction.add(R.id.video_fragment, videoFragment).commit();

标签:android-fragments,fragment,fragmenttransaction,android
来源: https://codeday.me/bug/20191118/2030458.html