如何在Activity类中使用android.support.v4.app.Fragment?

时间:2019-06-13 19:23:53

标签: android android-fragments

好,这是问题所在,不建议使用本机Android Fragment。 这将在Unity Android本机插件中使用。 用旧的方法,您只需像这样创建一个Fragment类:

        public class UnityAndroidNativeplugin extends Fragment
        {
        public static void Init()
        { 
          instance = new UnityAndroidNativePlugin
          UnityPlayer.currentActivity.
          getFragmentManager().
          beginTransaction().add(instance, UnityAndroidNativeplugin.LOG_TAG).commit();
        }
        }

这很好用,但我仍然不明白,如果不建议这样做,我们应该使用支持片段库。好的,我将更新此内容。 因此,当我更改为新版本时,应该是这样的。

    public class UnityAndroidNativeplugin extends android.support.v4.app.Fragment
    {
    public static void Init()
    { 
      instance = new UnityAndroidNativePlugin
      FragmentManager fragMan = UnityPlayer.currentActivity.getSupportFragmentManager();
      //This Fails
    }
    }

我已经知道我的主要Activity应该是FragmentActivity。 Cannot call getSupportFragmentManager() from activity在这里检查。

因此在使用Android活动(android.app.Activity)时无法使用android.support.v4.app.FragmentManager吗?

一种解决方案是覆盖Unity Main活动,但是在使用其他插件时可能会出现问题。或者也许使用片段以外的其他东西。

1 个答案:

答案 0 :(得分:0)

  

因此在使用Android活动(android.app.Activity)时无法使用android.support.v4.app.FragmentManager

正确。

  

如果不建议使用,则应使用支持片段库

或者更好的是AndroidX,因为不久之后支持库就将过时。