The Android Developer Challenge is back! Submit your idea before December 2.

从模板添加代码

Android Studio 提供了众多遵循 Android 设计与开发最佳做法的代码模板,可以指导您正确打造功能强大的美观应用。您可以使用模板创建新应用模块、各种 Activity 或者其他特定的 Android 项目组件。

某些模板为常用环境(例如抽屉式导航栏或登录屏幕)提供了起始代码。当您首次创建项目在现有项目内添加新应用模块或者在应用模块内添加新 Activity 时,可以从这些应用模块和 Activity 模板中选择。

除了 Activity 以外,使用模板还可以向现有应用添加其他 Android 项目组件。这些模板包含代码组件(例如服务和片段)与非代码组件(例如文件夹和 XML 文件)。

本文将探讨如何向您的项目中添加像 Activity 一样的 Android 项目组件,也将说明 Android Studio 中的常用 Activity 模板。请注意,大多数模板都依赖于 Android 支持库来包含基于 Material Design 的界面原则。

添加项目组件

图 1. 模板菜单,可通过 File > New 菜单访问,也可以通过右键点击 Project 窗口来访问。

Android Studio 提供的模板越来越多。Android Studio 按模板添加的组件类型(例如 Activity XML 文件)对模板进行分组,如图 1 所示。

要使用模板添加 Android 项目组件,请使用 Project 窗口。右键点击您想要在其中添加新组件的文件夹,然后选择 New。根据您点击的文件夹可以添加的组件,您会看到一个模板类型(如图 1 中所示)列表。

在您选择想要添加的模板时,对应的向导窗口将出现并要求提供组件的配置信息,例如名称。在您输入配置信息后,Android Studio 将为您的新组件创建并打开文件。它还会运行 Gradle 编译来同步您的项目。

尽管您还可以使用 Android Studio 的 File > New 菜单来创建新的 Android 项目组件,但在 Project 窗口中导航到所需的文件夹可以确保您在正确的位置创建组件。

选择 Activity 模板

模板的最常见用途之一是向现有应用模块添加新 Activity。例如,要为应用的用户创建登录屏幕,请使用“登录 Activity”模板添加一个 Activity。

本部分介绍了手机和平板电脑应用常用的 Activity 模板。Android Studio 还为各种不同的应用模块类型(包括 Wear OS、Android TV 和 Cloud App Engine)提供了模板。您可以在创建应用模块时查看适用于这些不同模块类型的模板。其他特定于 API 的模块和 Activity(例如 Google AdMobs 广告和 Google 地图)也可以使用模板。

以下手机和平板电脑模板为您提供了适用于特定使用环境(例如登录帐号、显示一个带详情的项目列表或滚动显示一大段文本)的代码组件。每个模板都可以用作完整的应用模块或单独的 Activity。

基本 Activity

此模板可以创建一个带应用栏和浮动操作按钮的简单应用。它提供了常用的界面组件,您可以从这个模板入手创建项目。

此模板包括:

底部导航 Activity

此模板提供一个用于 Activity 的标准底部导航栏,借助此栏,用户点按一下便可轻松浏览顶级视图并在这些视图之间切换。当您的应用有 3-5 个顶级目标时,可以使用此模板。如需了解详情,请参阅底部导航组件设计准则。

此模板包括:

  • AppBar
  • 一个布局文件,带适用于底部导航的示例布局

空 Activity

此模板可以创建一个空 Activity 和一个带示例文本内容的布局文件。您可以使用此模板从头开始构建应用模块或 Activity。

此模板包括:

  • 一个带文本内容的布局文件

全屏 Activity

此模板可以创建一个能够在主要全屏视图与带有标准界面控件的视图之间切换的应用。全屏视图是默认视图,用户可以通过触摸设备屏幕激活标准视图。

此模板包括:

  • 触摸监听程序实现,用于隐藏标准视图元素
  • 按钮,位于标准视图中,但不执行任何操作
  • AppBar,用于标准视图
  • 一个布局文件,带全屏视图和一个适用于标准视图元素的框架布局

登录 Activity

此模板将创建一个标准登录屏幕。界面包括电子邮件和密码字段以及一个登录按钮。它被用作 Activity 模板的频率要比用作应用模块模板的频率高。

此模板包括:

  • AsyncTask 实现,用于独立于主界面线程处理网络操作
  • 网络操作的进度指示器
  • 一个带建议登录界面的布局文件:
    • 电子邮件和密码输入字段
    • 登录按钮

主要/详情流

此模板可以创建拥有项目列表显示画面和单独项目详情显示画面的应用。点击列表屏幕上的项目可以打开一个带项目详情的屏幕。两种显示画面的布局取决于运行应用的设备。

此模板包括:

此模板可以创建一个带抽屉式导航栏菜单的基本 Activity。导航栏可以从应用的左侧或右侧展开,作为对常规应用栏的补充。

此模板包括:

  • DrawerLayout、对应事件处理程序和示例菜单选项的抽屉式导航栏实现
  • AppBar
  • FloatingActionButton
  • 用于抽屉式导航栏和抽屉式导航栏标题的布局文件,进一步补充了基本 Activity 模板中的相关文件

滚动 Activity

此模板可以创建一个带折叠式工具栏和长文本内容滚动视图的应用。在页面中向下滚动时,工具栏(可以作为标题)将自动缩短,并且浮动操作按钮将消失。

此模板包括:

设置 Activity

此模板可以为应用创建一个显示用户偏好设置或设置的 Activity。它扩展了 PreferenceActivity 类,用作 Activity 模板的频率要比用作应用模块模板的频率高。

此模板包括:

  • 可以扩展 PreferenceActivity 的 Activity
  • XML 文件(位于项目的 res/xml/ 目录中),用于定义显示的设置

标签式 Activity

此模板可以创建一个带多个部分、滑动导航和应用栏的应用。 这些部分以片段形式定义,您可以在两个片段之间左右滑动进行导航。

此模板包括:

  • AppBar
  • 适配器,可以扩展 FragmentPagerAdapter 并为每个部分创建一个 Fragment
  • ViewPager 实例,用于在两个部分之间进行滑动的布局管理器
  • 两个布局文件:一个用于 Activity,另一个用于各个片段