What is the role of content_main.xml in android studio 1.4?

According to new design pattern in android studio activity_main.xml will determine how the global UI of the Activity should be. And on the other hand content_main.xml will determine the contents in the activity_main.xml.

That is content_main.xml will contain the textview, edittext, button etc component. And it will be included by the activity_main.xml.

So we can think of content_main.xml just like partial in HTML. activity_main.xml will contain your activity global design, and content_main.xml will contain the contents.

From view of what they contain:

activity_main : Co-ordinator layout, ViewPager etc

content_main : Developer choosen elements. textview, edittext, button etc.

What the android developer website says about them is

activity_main:

This XML layout file is for the activity you added when you created the project with Android Studio. Following the New Project workflow, Android Studio presents this file with both a text view and a preview of the screen UI. The file contains some default interface elements from the material design library, including the app bar and a floating action button. It also includes a separate layout file with the main content

content_main:

This XML layout file resides in activity_my.xml (activity_main) , and contains some settings and Textview(other) element.


The difference between content_main.xml and activity_main.xml (for the class MainActivity) exists since the API 23. The difference between them is the following:

  1. The content_main.xml is used for displaying the things that the user should see. So it contains the elements which are for the user. As you can see in the name, the content_main.xml determines the contents you can find in your Activity (MainActivity in this case). You use this xml-file to add new contents (Views) to your Activity.

  2. The activity_main.xml has some special tasks. It contains for example:

    The floatingActionButton (the small round button you use in gmail for example)

    The tabLayout

    The coordinatorLayout

    So the activity_main.xml determines how the Activity (MainActivity in this case) should look. It determines its design.The content_main.xml is a part of the activity_main.xml.