Loading api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4592,6 +4592,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); } api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4749,6 +4749,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); } api/test-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4602,6 +4602,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); } core/java/android/app/Fragment.java +7 −3 Original line number Diff line number Diff line Loading @@ -102,15 +102,19 @@ final class FragmentState implements Parcelable { mSavedFragmentState = in.readBundle(); } public Fragment instantiate(FragmentHostCallback host, Fragment parent, FragmentManagerNonConfig childNonConfig) { public Fragment instantiate(FragmentHostCallback host, FragmentContainer container, Fragment parent, FragmentManagerNonConfig childNonConfig) { if (mInstance == null) { final Context context = host.getContext(); if (mArguments != null) { mArguments.setClassLoader(context.getClassLoader()); } if (container != null) { mInstance = container.instantiate(context, mClassName, mArguments); } else { mInstance = Fragment.instantiate(context, mClassName, mArguments); } if (mSavedFragmentState != null) { mSavedFragmentState.setClassLoader(context.getClassLoader()); Loading core/java/android/app/FragmentContainer.java +11 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ package android.app; import android.annotation.IdRes; import android.annotation.Nullable; import android.content.Context; import android.os.Bundle; import android.view.View; /** Loading @@ -35,4 +37,13 @@ public abstract class FragmentContainer { * Return {@code true} if the container holds any view. */ public abstract boolean onHasView(); /** * Creates an instance of the specified fragment, can be overridden to construct fragments * with dependencies, or change the fragment being constructed. By default just calls * {@link Fragment#instantiate(Context, String, Bundle)}. */ public Fragment instantiate(Context context, String className, Bundle arguments) { return Fragment.instantiate(context, className, arguments); } } Loading
api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4592,6 +4592,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); }
api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4749,6 +4749,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); }
api/test-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4602,6 +4602,7 @@ package android.app { public abstract class FragmentContainer { ctor public FragmentContainer(); method public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle); method public abstract android.view.View onFindViewById(int); method public abstract boolean onHasView(); }
core/java/android/app/Fragment.java +7 −3 Original line number Diff line number Diff line Loading @@ -102,15 +102,19 @@ final class FragmentState implements Parcelable { mSavedFragmentState = in.readBundle(); } public Fragment instantiate(FragmentHostCallback host, Fragment parent, FragmentManagerNonConfig childNonConfig) { public Fragment instantiate(FragmentHostCallback host, FragmentContainer container, Fragment parent, FragmentManagerNonConfig childNonConfig) { if (mInstance == null) { final Context context = host.getContext(); if (mArguments != null) { mArguments.setClassLoader(context.getClassLoader()); } if (container != null) { mInstance = container.instantiate(context, mClassName, mArguments); } else { mInstance = Fragment.instantiate(context, mClassName, mArguments); } if (mSavedFragmentState != null) { mSavedFragmentState.setClassLoader(context.getClassLoader()); Loading
core/java/android/app/FragmentContainer.java +11 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ package android.app; import android.annotation.IdRes; import android.annotation.Nullable; import android.content.Context; import android.os.Bundle; import android.view.View; /** Loading @@ -35,4 +37,13 @@ public abstract class FragmentContainer { * Return {@code true} if the container holds any view. */ public abstract boolean onHasView(); /** * Creates an instance of the specified fragment, can be overridden to construct fragments * with dependencies, or change the fragment being constructed. By default just calls * {@link Fragment#instantiate(Context, String, Bundle)}. */ public Fragment instantiate(Context context, String className, Bundle arguments) { return Fragment.instantiate(context, className, arguments); } }