Get Fragment dynamically attached to <FrameLayout>? Get Fragment dynamically attached to <FrameLayout>? android android

Get Fragment dynamically attached to <FrameLayout>?


Let me wrap it up by a full answer :)

In this case, the dynamically added Fragment uses the ID of the container View (ViewGroup).

ref: http://developer.android.com/guide/components/fragments.html#Adding

Note: Each fragment requires a unique identifier that the system can use to restore the fragment if the activity is restarted (and which you can use to capture the fragment to perform transactions, such as remove it). There are three ways to provide an ID for a fragment:

  • Supply the android:id attribute with a unique ID.
  • Supply the android:tag attribute with a unique string.
  • If you provide neither of the previous two, the system uses the ID of the container view.

It is because it's a Fragment afterall. We have to use getSupportFragmentManager().findFragmentById() to retrieve it, which returns a Fragment, instead of findViewById() which returns a View.

So the answer to this problem would be:

((aFrag) getSupportFragmentManager().findFragmentById(R.id.FragmentContainer))

Thanks to @Luksprog.