Java 在android studio中创建新的空白活动时添加了意外文件

Java 在android studio中创建新的空白活动时添加了意外文件,java,android,xml,android-layout,android-studio,Java,Android,Xml,Android Layout,Android Studio,我得到了新的android studio,在创建一个新的空白活动时,我注意到了一件事 与活动的java对应的布局制作了两次,一次作为内容: 这个新布局与常规的activity\u menu.xml完全相同,只是这个布局被称为content\u menu.xml。我还注意到activity\u menu.xml的布局代码中有这段代码: <include layout="@layout/content_menu" /> 这个额外的布局有什么意义?我可以删除它吗?我在官方

我得到了新的android studio,在创建一个新的空白活动时,我注意到了一件事

与活动的java对应的布局制作了两次,一次作为
内容

这个新布局与常规的
activity\u menu.xml
完全相同,只是这个布局被称为
content\u menu.xml
。我还注意到
activity\u menu.xml
的布局代码中有这段代码:

    <include layout="@layout/content_menu" />


这个额外的布局有什么意义?我可以删除它吗?我在官方文件上找到了,但我仍然不明白为什么有必要这么做。这在第一次更新中不存在…

例如,您希望在其他地方重用
content\u menu.xml
内容,在其他活动中,您将在xml文件中执行相同的include语句。关键是您正在重用相同的xml并减少内容的数量。

这里的
content\u菜单
只是您的
xml
布局内容的名称。别被这弄糊涂了。正如您在菜单活动中看到的,您将看到
setContentView(R.layout.Activity\u菜单)

在这里,活动被告知其布局是
activity\u menu.xml
中的内容,但在此(
activity\u menu.xml
)文件中,您会看到一个include标记。include标记意味着另一个名为
content\u menu.xml的
xml
文件中的内容必须包含在使用include标记的当前布局中。因此,如果您想更改内部内容,您可以保留
activity\u menu.xml
中的所有内容,并在
content\u menu.xml
中进行更改,所有内容都将在您的设计中可见


如果你不想要
content\u menu.xml
文件,你可以把这个文件中的所有内容复制到
activity\u menu.xml
来代替
tag
,然后删除
content\u menu.xml

文件。

为什么不再次膨胀菜单?@RuchirBaronia-你不会膨胀
content\u menu
。假设您在
activity\u menu.xml
fragment\u menu.xml
中包含
content\u menu
。你会在晚些时候膨胀……我现在真的迷路了。
内容的意义是什么?我们为什么需要重用它?是表演的原因还是什么?我甚至不知道
内容是什么,更不用说如何充气了。。。Thanks@RuchirBaronia-基本上,您可以删除
内容
,只要您将
活动
的XML中的
包含
行替换为
内容
@RuchirBaronia的完整内容-目的是让
内容
,并
包含它,因此,它可以在其他菜单中的其他位置重复使用。假设您在
content
中有一个“Quit App”菜单项,您可以
将该菜单项包含在所有其他菜单中,而无需在所有其他菜单中重新键入该菜单项。这是
activity\u main.xml
的文件夹吗?我以为布局文件夹中的子文件夹是bad@cricket_007我只是把它们放在所有屏幕的最佳布局中…如果你做得正确,我不应该太过分了-哦,这更有意义。这到底有什么意义?一旦我得到最好的答案,我会给你打分!原因有很多。将“工具栏”或“浮动操作按钮”等常见设计部分与主要内容分离。2.如果多个活动具有相同的内容或类似的布局,为了使代码可重用,这是最重要的原因。3.提高代码的健壮性和可读性。好的,在第二点中,你提到了可重用性。我们如何重用布局,为什么不使用片段呢?另外,是否可以删除
内容
?不,“片段”是一个具有自己完整生命周期的类,它使用与“活动”相同的系统资源,并执行ui组件的动态包含工作,因此它有自己的用途,然而这里的“content.xml”只是一个静态xml文件,可以静态地添加到任何地方,并且不一定在运行时修改。是的,如果您只想将ui代码放入“activity_yourfilename.xml”中,您可以删除内容文件。