content_main.xml和activity_main.xml的区别是什么?

67

我是一名 Android 应用程序开发新手,拥有 Android Studio 1.4。在我的布局文件夹中,有两个 XML 文件(content_main.xmlactivity_main.xml)。我一直在跟随 Bucky 的教程学习,他只使用了 activity_main.xml。我应该使用哪一个?


1
你能发一下教程的链接吗? - pgiitu
https://www.youtube.com/watch?v=9l1lfWAiHPg - Chris Daniel
你应该使用 activity_main.xml。请检查我的答案。 - pgiitu
content_main.xml 用于浮动操作按钮,activity_main.xml 用于活动的其他部分。 - aravindkanna
6个回答

73
与之前的版本不同,新的API 23带有coordinatorLayout等内容,并为了使它们更易于使用,Android将activity的布局区分为两种不同的布局,即content_main.xmlactivity_main.xml
我将解释它们的用途:
1. activity_main.xml 这个xml文件用于显示coordinatorLayouttabLayoutfloatingActionButtonviewPager等。
2. content_main.xml 这个xml文件用于显示你的东西,即你想向用户展示的内容。
因此,如果你只是要问哪个xml文件中要放置你的内容,那么content_main.xml就是那个。

10
仅仅是为了详细阐述并参考@SherlockSun的答案,他是唯一一个明确指出activity_main.xml包含content_mail.xml的“include”的人。这两个布局文件相关联,它们描述整体布局的不同方面。 - RenniePet
没错...但对于那些刚接触安卓环境的人来说,用这种方式解释事情会更好...而问题是关于使用哪个XML。 - Chordin4tion
@Chordin4tion - 如果我不想使用coordinatorLayout、tabLayout、floatingActionButton或viewPager,而是想要一个简单的布局,该怎么办?我还需要使用content_main.xml并将activity_main.xml闲置吗? - Shubs
2
@Shubs 这完全取决于你...如果你不想使用两个不同的布局,你可以使用 activity_main.xml 并从 activity_main.xml 中删除 include 标签。你可以删除协调布局、选项卡布局和其他东西,并将父布局替换为你计划使用的任何布局。 - Chordin4tion
1
“stuff”即您想向用户显示的内容。浮动操作按钮不是您想向用户显示的内容吗? - Julius

15

我认为 content_main.xmlactivity_main.xml 的一部分。 因为在 activity_main.xml 中有 include layout="@layout/content_main"


6
Android Studio 1.4提供了一个新的默认选项,在活动中命名为content_main.xml。实际上,活动加载的是activity_main.xml文件作为您的布局。content_main.xmlmain.xml的一部分。 您可以使用两者来布局,但是main.xml对于您的Activity至关重要。选择content_main.xml用于布局设计是一种选择。 希望你明白了。

2

activity_main和content_main是相互关联的。

你可以使用两者,但要具体而言,应该使用activity_main。

让我进一步解释。

activity_main,这是content_main所放置的地方。这是母子关系,其中activity_main是母亲,而content_main是孩子。

content_main,这是您放置控件/内容(例如按钮)的位置。这代表您设计的主体。


2
activity_main.xml是活动布局的“外部”部分(工具栏、操作按钮等),content_main.xml是内部部分,您可以在其中放置自己的布局(空白处)。
当您选择“空白活动”时,将不会生成content_main.xml文件,并且不会有浮动按钮,而只是简单的活动。
但是,当您选择“空白活动”时,content_main.xml文件将被生成。此活动默认情况下将在屏幕底部具有浮动按钮。

-2

这只是两个 XML 布局文件,基本上代表了两种不同的布局。您应该根据您想在 Android 应用程序中使用的布局来使用文件。

根据教程,很简单,您应该使用 activity_main.xml,因为它是 MainActivity 的布局。

您还可以在 Android Studio 中查看布局文件的预览,以了解它在应用程序中的外观。


1
确定吗?你确定吗? - B001ᛦ
使用 content_main.xml 添加所有元素。 - nikoo28
2
这是不正确的 - 它们不是两个不同的布局。请参考@SherlockSun的答案 - 他是唯一一个明确指出activity_main.xml包含content_mail.xml的“include”的人。因此,这两个布局文件是相关的,它们描述了整体布局的不同方面。 - RenniePet
换句话说,当您将一些HTML代码嵌入到HTML代码中时,并不意味着这些HTML是不同的页面。只有一个页面,但由两个部分组成... - Nusrat Nuriyev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接