空白活动与空活动

时间:2015-11-29 13:35:45

标签: android

有人知道为什么最新版本的Android Studio中的空白活动现在包含每个活动的两个.xml文件?我的直觉是使用空活动并继续“旧方式”做事,但我想知道Android的“大局”是什么?使用这种新的空白活动格式开发任何未来的应用程序是否更明智?谢谢。

2 个答案:

答案 0 :(得分:17)

  

有人知道为什么最新版本的Android Studio中的空白活动现在包含每个活动的两个.xml文件吗?

对于Android Studio 1.5,content_main.xml包含活动的核心UI。 activity_main.xml将其包含在一堆其他内容(例如CoordinatorLayout)中,以演示一些特定的UI元素(例如,FAB)。 activity_main使用<include>通过引用合并content_main

这些模板偶尔会发生变化,因此如果您将来阅读这些模板,您的模板版本可能会有很大差异(请停止阅读您的飞行汽车的Stack Overflow答案,因为这样做会带来安全隐患)。

  

我想知道Android的这些变化的“大局”是什么?

恕我直言,你严重夸大了这些模板的作用。它们是样品,仅此而已。

  

使用这种新的空白活动格式开发任何未来的应用程序是否明智?

不重视模板更明智。它们是样品,仅此而已。开发人员应该知道他们想要构建什么以及他们想要如何构建它。如果其中一个模板接近所需的模板,请使用它。否则,完全跳过新活动向导,然后自己添加新活动。

如果新活动逻辑不能直接避免(例如,新项目向导),请使用“空活动”(因为它具有您需要删除的最少的东西)或找到其他解决方案。例如,除了用于试验新项目向导本身之外,我从不使用它,而且我每周都会制作一些Android项目。相反,我将复制现有项目并将其调整为新的包名称和内容,然后将其导入到Android Studio中,因为我发现这比不必撕掉模板生成的垃圾更少刺激。

答案 1 :(得分:2)

如果您选择空白活动,则可以选择让活动使用Fragment。此外,Android Studio将自动为活动创建两个布局文件,如果选择Fragment选项,则为三个,以及菜单资源文件。

如果您选择清空活动,则可以选择是否要Android Studio为活动生成布局文件。如果选择布局文件选项,Android Studio将创建一个布局文件,而不是在空白活动的情况下创建两个布局文件,并且没有菜单资源文件。此外,布局文件更简单,并且不包含以下内容:Coordinator LayoutFloating Action Button等,而空白活动的布局文件包含这些项目,假设您正在使用最新版本的Android Studio。