Get fragment's container view id

Dmitry Ryadnenko picture Dmitry Ryadnenko · Aug 3, 2011 · Viewed 74k times · Source

I have a fragment added using

transaction.add(R.id.content, fragment, null);

and I need to start new fragment from this one. But to do this I need to know first fragment's container view id (R.id.content in my case). How can I get this?

I can just use this id directly but I suppose fragment shouldn't know such kind of details about parent activity. For example it will be impossible to use this fragment in another activity in this case.

May be "starting" fragment from another one is a bad practice and all fragment handling logic should be handled by activity itself? But creating nice sequences of fragments starting each other seems quite useful (for example detalView->moreDetailView->evenMoreDetailView).

Answer

Behlül picture Behlül · Oct 5, 2011

You can access the container's id by calling

((ViewGroup)getView().getParent()).getId();