What is the use of "attach to root" in layout inflater?

srujan maddula picture srujan maddula · Mar 11, 2014 · Viewed 10.9k times · Source

I am a newbie to android, I know this question has already been asked but i couldn't get a satisfactory explanation. My doubts are:

  1. What is "attach to root" used for, if possible with a small and clear example.
  2. When I searched for the answer people said its optional used to attach to parent view group, What is the view group hierarchy?(Is that considering views that we created programatically or is that also considering the views that are already declared in an xml file)

I hope the questions is clear, if not please say so in the comments.

Answer

Umer Farooq picture Umer Farooq · Mar 24, 2014

I myself was also confused about what was the real purpose of attachToRoot in inflate method. After a bit of UI study, I finally got the answer:

parent:

in this case is the widget/layout that is surrounding the view objects that you want to inflate using findViewById().

attachToRoot:

attaches the views to their parent (includes them in the parent hierarchy), so any touch event that the views recieve will also be transfered to parent view. Now it's upto the parent whether it wants to entertain those events or ignore them. if set to false, they are not added as direct children of the parent and the parent doesn't recieve any touch events from the views.

Hope this clears the confusion