概述:
SDK工具提供了代码模板以便我们通过基本架构或者添加组件到已存在的APP模块来快速的创建Android APP工程. 代码模板通过Android SDK提供, 它符合Android设计和开发原则, 让我们可以按照模板的风格创建出漂亮功能强大的APP. 有几种不同的Android代码模板, 它们可以创建任何东西, 从一整个APP到指定的APP组件都可以. 主要的代码模板有这几种:
l APP模板
l Activity模板
l 其它模板
模板会使用支持库对象(如果可用). 支持库对象使得不同版本的平台上都可以使用最新的功能. 栗如, 自从模板使用appcompat库, 基于模板的APP就可以使用material design中的用户接口了, 即便它们运行在旧版本的不能直接支持material design的Android设备上.
Application模板:
Application模板可以创建直接运行的基础AndroidAPP组件, 我们可以直接运行它, 并且在我们的设备上测试. 想要使用这些Android APP模板的话:
1. 在Android Studio中, 选择File->New->Module.
2. 进入APP配置, 包括Application Name, Company Domain, Package name, 和minimum SDK,然后点击下一步.
3. 选择一个APP模板, 然后点击下一步, 比如BlankActivity, FullScreenActivity, MasterDetailFlow.
4. 进入activity配置, 包括Activity Name, layout Name, Title, 和Menu Resource Name, 然后点击下一步.
提醒: 选择其它的activity模板也可以创建一个APP, 但是这些APP需要更多的修改才能在Android设备上运行.
BlankActivity模板:
栗子 | 描述 |
| BlankActivity模板+Navigation Type:None选项会创建一个简单的APP, 它遵循Android Design原则. 使用该模板来创建一个基础, 最小的APP作为一个工程的起点. 该模板包括: l Title bar(在Android 3.0及更高版本中的ActionBar). l Options menu(在Android 3.0及更高版本中的action overflow). l 基础layout. |
| BlankActivity模板+Navigation Type: Tabs+Swipe选项会创建一个APP, 并带有三个基于fragment的section, 以及一个tabbed用户接口. 该模板包括: l 用于控制tab的ActionBar. l Section内容中的fragment. l 基于swipe view设计模式的可选的滑动手势支持, 它继承自FragmentPagerAdapter, 可以管理section fragment. |
BlankActivity模板+Navigation Type: Swipe View + Title Strip选项会创建一个APP, 它包含三个fragment section, 一个紧凑的标题栏(在Android Design指导中叫做Scrollable Tabs)和基于swipe view设计模式的滑动导航. 该模板包括: l PagerTitleStrip作为section标题. l Section内容中的fragment. l FragmentPagerAdapter用于管理section fragment. | |
BlankActivty模板+Navigation Type: Dropdown选项. 它会创建一个扩展了FragmentActivity的APP, 包括是哪个Fragment section, 一个ActionBar, 使用列表模式导航. 该模板包括: l ActionBar用于列表模式导航. l Section内容中的Fragment对象. |
全屏Activity模板:
栗子 | 描述 |
| 该模板提供一个activity, 它可以在一个全屏的view和一个提供标准用户控制(包括Notification bar和app title bar)的view之间切换. 全屏的view是默认的, 用户可以通过点击屏幕来启动这个标准的view. 该模板包括: 1. SystemUiHider, 它实现了系统用户接口的隐藏. 2. 基础layout. |
MasterDetail Flow 模板:
栗子 | 描述 |
| 该模板为一系列条目和相关信息创建了一个自适应布局(类似新闻APP的界面). 在一个平板设备上, 条目本身和详情都会一起显示在一个屏幕上. 在一个小屏幕设备上, 条目列表和详情则显示在分开独立的屏幕上. 该模板包括: l 使用替代资源XML文件的自适应布局. l FragmentActivity, Fragment和ListFragment实现. |
Activity模板:
Android Activity模板提供了向已有APP添加新的Activity的功能. 想要使用AndroidActivity模板:
1. 右键点击想要添加Activity的Android APP的工程目录.
2. 选择New->Other…
3. 选择Android->Android Activity, 然后点击下一步.
4. 选择一个Activity模板, 然后按照说明添加到工程中.
a) LoginActivity
b) SettingsActivity
c) BlankActivity
d) FullScreenActivity
e) MasterDetailFlow
这些模板跟Application模板创建相同类型的activity, 但是下面这俩是特殊情况:
LoginActivity模板:
栗子 | 描述 |
| 该activity模板提供输入域和一个AsyncTask的实现, 让用户可以登录或者注册. 该模板包括: l 请求登录信息的接口. l AsyncTask的实现, 它用于在主线程意外独立处理网络操作. l 在网络操作期间显示网络进度. |
SettingsActivity 模板:
栗子 | 描述 |
| 该模板继承自PreferenceActivity类, 它通过一个XML文件来创建偏好设置功能. 该模板还演示了如何实现设置项中的数据类型. 它包括: l 继承自PreferenceActivity的Activity. l 使用XML文件定义的Preference值. 位于res/xml目录下. |
其它模板:
Android对象模板提供了一些添加新组件到APP工程中的选项, 包括前面提到的activity以及下面这些额外的对象, 想要使用Android对象模板:
1. 右键点击APP工程中的目标模块目录.
2. 选择New
3. 选择对象类型和模板, 然后根据说明添加到工程中.
a) AIDL
b) Activity
c) Folder
d) Fragment
e) Google
f) Other
g) Service
h) UI Component
i) Wear
j) Widget
k) XML
参考: https://developer.android.com/tools/projects/templates.html