Android Studio 在特定的时间仅仅显示一小部分可用窗口。除了一些上下文敏感的窗口和上下文相关的窗口显示出来外,其他的仍旧隐藏,除非你主动打开它们。或者相反,一些可见的窗口直到你主动隐藏它们。为了充分利用Android Studio,你就需要明白这些窗口的功能以及如何、何时去显示它们。在这一章,我们将向你展示如何管理Android Studio的窗口。
任何一个集成开发环境(IDE)的基础功能就是导航。Android 项目通常是由许多的包,目录和文件组成,甚至一个稍微复杂的Android项目能够包含数百个这样的资源。你使用Android Studio的效率很大程度上取决于你处理这些资源的舒适程度。在这一章,我们还将展示在Android Studio中如何使用导航。
最后,我们将向你展示如何使用Android Studio中的帮助系统。为了充分理解这一章,我们打开第一章创建的HelloWorld项目。如果项目已经在Android Studio中打开,说明你已经准备好了。请参考图2-1,我们将讨论下面的导航功能。
图2-1 Android Studio集成开发环境
编辑器
任何IDE的主要目的就是编辑文件。正如人们所预料的,在Android Studio中允许用户编辑文件的窗口位于IDE的中心。在所有的窗口中,编辑窗口是唯一一个一直可见并位于中心的窗口。事实上,编辑窗口在Android Studio中无处不在,所以从现在起我们称它为编辑器。所有在Android Studio中围绕在编辑器周围的其他窗口都被称为工具窗口和侧窗口(左部,底部,右部)。编辑器是一个类似于现代WEB浏览器的选项卡式的窗口。当你从工具窗口,键盘快捷键或上下文菜单打开一个文件的时候,文件将作为一个选项卡显示在编辑器中。再你新建的第一个项目——HelloWorld中,MainActivity.java和activity_main.xml作为选项卡自动加载在编辑器中。Android Studio试图揣测你想开始编辑哪些文件,然后在新项目向导完成后自动作为选项卡在编辑器中打开。几乎任何文件能够在编辑器中打开,虽然原始图像和声音文件还不能在Android Studio中编辑。你也可以从工具窗口拖拽文件到编辑器,这样做可以直接作为选项卡在编辑器中打开。
编辑器上面是编辑选项卡。在左边沿是边列,在右边沿是编辑栏。让我们开始探索吧。
编辑选项卡
在Android Studio中切换选项卡可以使用Ctrl或Alt+左或右箭头。当然,你也可以用鼠标选择编辑选项卡。编辑器选项卡的选项位于主菜单栏的Window>Editor Tabs下。你在此处进行的任何操作都将应用于当前选中的选项卡上。将你的鼠标放置在mainActivity.java选项卡并右击它(Mac下按住Ctrl点击)。如图2-2所示,在生成的菜单中,你会看到很多跟Window>Editor Tabs下相同的选项。从这个菜单中,选择Tabs Placement子菜单。此菜单选项允许你将选项卡移动到上,下,左,右。将选项卡移动到左边或右边能容纳更多可见的选项卡,但是会占用部分屏幕。图2-2 内容菜单编辑选项卡
The Close and Close All actions of the Editor tab context menu are straightforward. The Close Others action is used when you want to close all the tabs except the active tab. The Split Vertically and Split Horizontally actions are used to subdivide 编辑器菜单上的Close和Close All操作是很明确的。而你想关闭除此之外的所有选项卡,你应该使用Close Others。而Split Vertically和Split Horizontally操作用来将编辑器细分成窗口。如果你想比较两个文件那么Split Vertically将会很有用。你可以无止境的进行细分,尽管这种嵌套分割的效果大大降低。你也可以将其他窗口的文件拖拽到编辑器的任何面板,或者从一个面板到另一个面板。当最后一个选项卡关闭的时候,整个面板就会消失。
边列
边列用于传递你代码的信息。也许边列最明显的特性就是在你代码的同一行用小色卡或者小图标来显示那些可视化资源。边列也可以用于设置断点,支持代码折叠,并用作代码范围指示器。所有这些特性将会在后续的章节中详细介绍。标记栏
编辑器的右边是标记栏。标记栏用于指示你资源文件中重要行的位置。例如,当你的Java或XML文件出现警告信息或编译出错时标记栏会高亮显示这些信息。右边栏也会显示未提交的更改,搜索的结果和书签的位置。标签栏不会像边列一样滚动,相反,标签栏上的彩色标记是文件长度的相对定位。点击标签栏的彩色标记将会立即跳转到文件的位置。现在通过点击一些彩色标记来练习使用标签栏。工具按钮
你应该已经看到了默认显示在左边面板的项目工具窗口。你可以点击主菜单上的View>Tool Windows来查看全部的工具窗口。现在你可以仔细的观察IDE的左边,右边和下边。你会发现工具按钮相对应的窗口。注意,有一些工具按钮后面有一个数字,这些数字结合Alt(Mac上的Cmd)键用来打开/关闭相应的工具窗口。尝试点击这些工具按钮来练习这项技能。同时使用键盘快捷键Alt+1|Cmd+1,Alt+2|Cmd+2,Alt+3|Cmd+3等打开/关闭工具窗口。当某个工具窗口打开之后,相应的工具按钮呈深灰色,表示不能按下。请注意位于边缘角落的工具按钮。例如,Project的默认位置在左上角,Favorites的默认位置在左下角。
侧边栏(左边,下边,右边)可以同时被两个工具窗口共享。同时打开Favotites和Project工具窗口看看侧边栏是如何共享的。可以看到,Favorites和Project工具窗口位于同一边的相对的角落。两个位于相同角落的工具窗口是不会同时出现在一个侧窗格窗口的。例如,Project和Structure工具窗口不能够同时显示出来——至少在Android Studio的默认配置上不会。
默认布局
不要将Android Studio中的默认布局和Android SDK中的布局混为一谈。默认布局是聚集在编辑器周围的一组特定的工具窗口。Android Studio打开之后配置一个将Project工具窗口显示在左边的默认布局。以前布局显示如图2-1所示。让我们看看主菜单上的Window菜单。前两个菜单项是Store
Current Layout as Default(将当前布局存储为默认布局)和Restore Default Layout(恢复默认布局)。恢复默认布局通常用在IDE窗口变得拥挤,或者你想清理面板将之还原到你熟悉的布局。你也可用通过打开,关闭,调整或者重新定位你喜欢的窗口,然后选择将当前布局存储为默认布局来设置新的默认布局。
—————————————————————————————————————————————————
REPOSITIONING TOOL BUTTONS
重新定位工具按钮
正如前面所提到的,Project和Structure工具窗口之所以不能够同时显示,是因为他们相应的工具按钮位于相同的角落。但是你可以任意移动工具按钮到你想要的角落。将Structure工具按钮拖拽到左下角的角落。现在,使用键盘快捷键Alt+1|Cmd+1和Alt+7||Cmd+7或者点击工具按钮来打开Project和Structure工具窗口。由于我们将这两个工具按钮移动到相反的角落,所有Project和Structure能够在相同的面板窗口同时地展现出来。
—————————————————————————————————————————————————
Navigation Tool Windows
导航工具窗口
本节讨论专门用作导航的工具窗口:Project,Structure,Favorites,TODO和Commander。表2-1列出了他们每个导航窗口的功能。之后的章节将讨论许多其他工具窗口。Table 2-1. Navigation Tool Windows
表2-1 导航工具窗口
项目工具窗口
我们发现Project工具窗口是非常有用的导航工具窗口,因为它将有限的宽度空间和相对容易的访问结合起来。为了欣赏Project工具窗口的效用,你要将Project设置为窗口模式。Project总共有三种模式;Project,Packages和Android。Android Studio在默认情况下将模式设置为Android。Android和Project是非常有用的模式,即使Android模式可能为你隐藏某些目录。模式设置组合框毗邻IDE的左上角Project按钮并与之呈90度角。Project工具窗口提供了一个简单的嵌套接口文件和目录树来方便你切换。Project工具窗口呈现你项目中的所有包,目录和文件的概览。如果你在项目工具窗口中右击(mac下按住ctrl单击),将会显示一个上下文菜单。此处有三个重要的菜单项:复制路径,文件路径和在资源管理器中显示。点击Copy Path复制操作系统的绝对路径到剪贴板。点击File Path以倒序方式显示目录堆栈,点击任何一个目录都将在操作系统中打开他们。点击 Show in Explorer将会在你的操作系统中打开一个新窗口来显示文件。如图2-3.图2-3 项目工具窗口
The Structure Tool Window
结构工具窗口
结构工具窗口用来显示文件中元素的层次结构。当编辑器显示诸如MainActivity.java的java源文件时,Structure工具窗口将会以树状形式呈现元素,如字段,方法和内部类。当编辑器显示诸如activity_main.xml的XML文件时,Structure工具窗口以树状结构呈示XML元素。在Structure工具窗口中点击任何元素,光标将会立即移动到编辑器中的该元素上。Structure工具窗口特别适合导航超大源文件中的元素。通过打开Structure工具窗口和导航MainActivity.java与activity_main.xml中的元素来练习此技巧。如图2-4所示。图2-4 结构工具窗口
The Favorites Tool Window
收藏夹工具窗口
当在Android中开发一个功能(或者调试bug)的时候,你可能会创建或修改一些相关文件。中等复杂的Android项目可能包含数百单个文件,因此,具有分组相关文件的能力是非常有用的。Favorites工具窗口能够容纳那些你将 实际上位于你项目中完全不同的地方的相关文件进行逻辑分组的最爱。将MainActivity.java和activity_main.xml文件在编辑器选项卡中打开。在任意一个选项卡上右击(Mac下按住Ctrl单击),在上下文菜单中选择Add All to Favorites。在Input new favorites list name中输入main然后点击OK。如果Favorites工具窗口没有打开,通过Alt+2|Cmd+2来打开。展开列表中的main,然后通过双击来打开/激活其中的一个文件。
就像Favorites窗口能够让你立即导航到特定文件或文件组一样,书签能够让你快速导航到文件的特定行。将你光标放到MainActivity.java的任意一行。按一下F11(Mac下按F3)。这个操作便是创建或者删除资源文件包括XML文件中的书签。观察边列的检查标志和标记栏的黑色标记来指示新的标签。通过打开Favorites工具窗口中的书签来查看你刚刚创建的书签。
注意: 在PC上,如果F11没有响应,请确保你键盘上的F-Lock键是激活的。
<译者注:Android Studio一直在升级,此处F11没有效果的童鞋可以通过查看点击菜单栏的Navigate ➤Bookmarks来查看标签快捷键。>
断点是用来调试的。不像标签,可以在任何文件中进行设置,断点只能在java文件中进行设置。打开MainActivity.java,然后在如下代码行的边列上单击:
setContentView(R.layout.activity_main);
你会发现一个红色圆圈出现在边列,并且整行代码都是红色高亮的。断点只能被设置在可执行的代码行上;举个例子,如果在注释行上设置断点,并没有什么效果。打开Favorites工具窗口中的Breakpoints查看你刚刚创建的断点。你可以用断点做很多有趣的事,在之后的第12章,我们将讨论用于调试的断点。
TODO工具窗口
TODO的意思当然是要做的事。TODO本质上是用于程序员们和他们的合作者表明还要做的事。TODO写法跟注释类似,以双斜杠开头,然后TODO大写,后面跟一个空格。例如://TODO inflate the layout here.
在MainActivity.java中创建一个TODO然后打开TODO工具窗口,就可以看到它。在TODO工具窗口中点击一个TODO,将会立即跳转到源代码中的TODO。