【问题标题】:How to set a Tag to a Fragment in Android如何在 Android 中为片段设置标签
【发布时间】:2015-05-05 19:57:46
【问题描述】:

我查看了 Stackoverflow 上的所有问题,但找不到一个明确的答案。如何将标签设置为Fragment,以便可以通过getFragmentManager().findFragmentByTag() 检索它?有人可以提供一个简单的代码示例来说明如何为Fragment 创建标签吗?

【问题讨论】:

    标签: android android-fragments fragmentmanager


    【解决方案1】:

    您可以在片段交易期间设置Tag

    例如,如果它是 replace 事务,您可以这样做:

    FragmentManager fragmentManager = getSupportFragmentManager();
    fragmentManager.beginTransaction()
            .replace(R.id.fragment_container, mFragment, TAG)
            .commit();
    

    如果您使用的Fragment 不是来自支持库的,请使用getFragmentManager() 而不是getSupportFragmentManager()

    【讨论】:

      【解决方案2】:

      我使用该功能在Dialog 框和Fragment 之间提供。 当Dialogbox发生更改时,App可以轻松更新Fragment UI

      我的片段。

      DialogFragment dialog = LastCycleDate.newInstance( last_period_start );
              dialog.setTargetFragment( this, 0 );
              dialog.show( getActivity().getSupportFragmentManager(), "showLastCycleDate" );
      

      MyDailogBox.java

      Fragment targetFragment; = getTargetFragment();
      if( targetFragment instanceof IntroParentFragment ){
                  IntroParentFragment introParentFragment = ( IntroParentFragment ) targetFragment;
                  introParentFragment.mutualMethods.setLastCycleStartDay( start_date );
              }
      

      【讨论】:

        猜你喜欢
        • 2016-04-24
        • 2023-03-08
        • 1970-01-01
        • 2011-09-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多