gpt4 book ai didi

android - 如何从一个 fragment 传递到另一个 fragment

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:33 24 4
gpt4 key购买 nike

在我的应用程序中,我有带有一些 fragment 的抽屉导航。当我在抽屉中选择时,我执行以下代码:

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

在 MainActivity 中。

现在在一个 fragment 中,我想在屏幕底部放置一个 TabLayout,但我遇到了这样的麻烦:

  1. 是否可以将一个 fragment 替换到另一个 fragment ?我可以在哪里放置 fragmentTransaction
  2. 如果我想调用第三个 fragment (例如其中一个选项卡 fragment 中的“发送”按钮),我可以对选项卡使用相同的功能吗?

谢谢你的回答

最佳答案

你可以这样做......

//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);
}
}

/对于您的问题,是否可以从一个 fragment 替换为另一个 fragment ?我可以把 fragmentTransaction 放在哪里?是的这样做

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

关于android - 如何从一个 fragment 传递到另一个 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36884231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com