Android Studio一共有三种视图.我们来分别分析每一种视图的作用.

一.Project视图.(白色字体的目录/文件可不关注)

<div class="linenums" style="color: rgb(30, 52, 123); margin-top: 0px; margin-bottom: 0px; padding-left: 0px;"><div class="L0" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">build</span></code></div><div class="L1" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="pln" style="color: rgb(72, 72, 76);">iml</span></code></div></div>

Android的项目.gitignore文件推荐这么写

<div class="linenums" style="color: rgb(30, 52, 123); margin-top: 0px; margin-bottom: 0px; padding-left: 0px;"><div class="L0" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Built</span><span class="pln" style="color: rgb(72, 72, 76);"> application files  </span></code></div><div class="L1" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="pln" style="color: rgb(72, 72, 76);">apk  </span></code></div><div class="L2" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="pln" style="color: rgb(72, 72, 76);">ap_  </span></code></div><div class="L3" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L4" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Files</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="kwd" style="color: rgb(30, 52, 123);">for</span><span class="pln" style="color: rgb(72, 72, 76);"> the </span><span class="typ" style="color: teal;">Dalvik</span><span class="pln" style="color: rgb(72, 72, 76);"> VM  </span></code></div><div class="L5" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="pln" style="color: rgb(72, 72, 76);">dex  </span></code></div><div class="L6" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L7" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Java</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="kwd" style="color: rgb(30, 52, 123);">class</span><span class="pln" style="color: rgb(72, 72, 76);"> files  </span></code></div><div class="L8" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="kwd" style="color: rgb(30, 52, 123);">class</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L9" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L0" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Generated</span><span class="pln" style="color: rgb(72, 72, 76);"> files  </span></code></div><div class="L1" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">bin</span><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L2" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">gen</span><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L3" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L4" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Gradle</span><span class="pln" style="color: rgb(72, 72, 76);"> files  </span></code></div><div class="L5" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">.</span><span class="pln" style="color: rgb(72, 72, 76);">gradle</span><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L6" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">build</span><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L7" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L8" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Local</span><span class="pln" style="color: rgb(72, 72, 76);"> configuration file </span><span class="pun" style="color: rgb(147, 161, 161);">(</span><span class="pln" style="color: rgb(72, 72, 76);">sdk path</span><span class="pun" style="color: rgb(147, 161, 161);">,</span><span class="pln" style="color: rgb(72, 72, 76);"> etc</span><span class="pun" style="color: rgb(147, 161, 161);">)</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L9" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">local</span><span class="pun" style="color: rgb(147, 161, 161);">.</span><span class="pln" style="color: rgb(72, 72, 76);">properties  </span></code></div><div class="L0" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L1" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Proguard</span><span class="pln" style="color: rgb(72, 72, 76);"> folder generated by </span><span class="typ" style="color: teal;">Eclipse</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L2" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">proguard</span><span class="pun" style="color: rgb(147, 161, 161);">/</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L3" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L4" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">#</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Log</span><span class="pln" style="color: rgb(72, 72, 76);"> </span><span class="typ" style="color: teal;">Files</span><span class="pln" style="color: rgb(72, 72, 76);">  </span></code></div><div class="L5" style="color: rgb(190, 190, 197); line-height: 18px; padding-left: 0px; list-style-type: none;"><code class="language-java" style="font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; word-wrap: break-word;"><span class="pun" style="color: rgb(147, 161, 161);">*.</span><span class="pln" style="color: rgb(72, 72, 76);">log </span></code></div></div>

二.Packages视图

该视图下和Project最大的区别就是隐藏了中的配置文件,属性文件和系统自身的目录.
只是显示了当前的Module列表和Module下面的目录,文件.

三.Android视图

Andrid视图是新版的AS新推出来的一个视图.很多人都是从Ecplise的开发中转过来的,习惯了Project视图.
使用了一下Android视图.发觉确实有它的去多优点.
由于大部分的目录,文件都在第一个个视图中详细进行的标注.这里就不在一一标注了.
可以看到在Android视图下的一级目录分两个区域,一个是Module列表区域,一个是Gradle脚本区域
Module目录下分三个子目录,分别对应mainfests文件,java源码,res资源目录.
图中,有多个目录和文件名是相同的.但是后面带有一个标识.例如diesns.xml文件有两个,一个后面带有(w820dp)
意思说手机的可用宽度至少要820dp的情况下才会引用该文件下的dimens值.具体请参考链接:
http://blog.csdn.net/siyehuazhilian/article/details/41891483
我们比较关心这样的文件是怎么建立的.其实前面已经说了,Project的所有视图都是真实的目录.而在
Android视图下,很大目录都是不存在,是由Android视图自动合并在了一起,方便我们理解和布置.
eg:
切换到Project视图中,就是在该目录下的一个dimens文件
Android视图自动把它们合并到一起,表示这几个文件的作用是一样的,只不过会因为设备的不同,而引用不同目录下的文件.
Gradle脚本目录下有多个Gradle文件和属性文件.
看其后面的提示,从上到下分别为:项目空间的gradle配置文件,第一个module和第二个module配置文件.
gralde属性文件,设置文件,以及本地SDK路径属性文件.
这些文件在Project中已经详细的说明了.这里就不一一解释.
Adnroid视图最大的好处就是去掉一些我们本身不关心的文件和目录.(配置,属性文件等)并且把一些资源文件,源文件很清晰的合并在一起.
隐藏了一些自动自动生成的文件和目录(例如R文件等)可以让我们更方法的管理整个项目/module.

Android Studio 视图解析相关推荐

  1. android actionbaractivity 错误,Android studio无法解析ActionBarActivity

    我已经尝试使缓存无效并重新启动但它仍然显示,并且不会像之前那样编译和运行.如果我没记错的话,我尝试重命名类文件,并且必须更改名称以使其达到最佳状态.它还给了我同样的错误,其中findViewById, ...

  2. 新版Android Studio Logcat解析

    最近,将本地的AndroidStudio升级到了2021.3.1版本,发现LogCat日志面板大变样了. 界面虽然好看了,但是使用却需要我们做一些改变:需要开发者使用正则过滤package:mine. ...

  3. Android studio入门详解

    1.如何查看Android studio的环境搭建是否成功 首先在Android studio中的sdk manager查看sdk存放位置,如何打开,同时按shirt+ctrl+鼠标右键,如下图: 然 ...

  4. Android Studio 性能优化工具 - Profiler、CPU Profiler、Memory Profiler、Netwrok Profiler、Evengy Profiler 详解

    关于性能优化的问题,可能一直有遇到,也一直在解决,但是在中小厂和自我要求不严格的场景下,我们很少去实实在在的做性能优化: 在性能优化中我们通常会通过自己的经验或工具来发现问题,本想着能短时间内搞定Pr ...

  5. 学会这3个Android Studio操作,保你月薪double

    码个蛋(codeegg)第 753次推文 作者: 孙强Jimmy 原文: https://www.jianshu.com/p/0770cde09ede 前言 Android Profiler能够提供关 ...

  6. 转-Android Studio *.jar 与 *.aar 的生成与*.aar导入项目方法

    主要讲解Android Studio中生成aar文件以及本地方式使用aar文件的方法. 在Android Studio中对一个自己库进行生成操作时将会同时生成*.jar与*.aar文件. 分别存储位置 ...

  7. [Android][Android Studio] *.jar 与 *.aar 的生成与*.aar导入项目方法

    2019独角兽企业重金招聘Python工程师标准>>> 主要讲解Android Studio中生成aar文件以及本地方式使用aar文件的方法. 在Android Studio中对一个 ...

  8. 《ArcGIS Runtime SDK for Android开发笔记》——(6)、基于Android Studio的ArcGIS Android工程结构解析...

    1.前言 Android Studio 是第一个Google官方的 Android 开发环境.其他工具,例如 Eclipse,在 Android Studio 发布之前已经有了大规模的使用.为了帮助开 ...

  9. Android Studio自定义视图无法预览

    Android Studio自定义视图没有办法预览 我想大家应该都和我一样,如果看到布局的编码的时候如果右边能够非常直观地显示出对应的视图,心里会非常舒心,像官方提供的tools命名空间就是为了这个目 ...

最新文章

  1. hi3559 h264
  2. 技术团队新官上任之基层篇
  3. mysql主从复制-mysqldump
  4. mysql 第几周 时间戳_php时间戳函数实现计算第几周,以及当天所在周的具体日期范围...
  5. MySQL存储过程之查询受影响的行数与查询到的行数
  6. PHP如何有效实现多视频同时上传功能
  7. 《哪来的天才》读书笔记
  8. 力扣(LeetCode)244. 最短单词距离 II(2022.09.01)
  9. Java方法 的学习
  10. 60-硅谷课堂6-硅谷课堂-公众号消息和微信授权-- 笔记
  11. Android版本新特性(6-12)(13预览)
  12. docker使用alpine镜像
  13. Java中存取Rtf文件
  14. 体育战略放眼全球 今目标携海信手机开启欧洲杯JINGOAL季
  15. 适合python爬虫使用的浏览器_python爬虫:常用浏览器的useragent
  16. OpenCV 实现基于边界的模板匹配-适用部分覆盖和光照变化情况
  17. 如何 FFT(快速傅里叶变换) 求幅度、频率(超详细 含推导过程)
  18. 计算机网络期末考试简答题
  19. Vegas最新版本常用快捷键操作
  20. C#(四十四)之线程死锁

热门文章

  1. vue实现倒计时验证码
  2. mysql索引需要了解的几个注意
  3. 阿里云linux绑定域名
  4. Hadoop入门基础教程 Hadoop之伪分布式环境搭建
  5. Maven项目构建练习
  6. 数据结构及算法之快速排序-python实现
  7. 国外的老师是怎么教Golang的?
  8. 利用Kubernetes搭建便携式开发环境之MySQL和Redis
  9. Redis的应用场景汇总
  10. JS module的导出和导入 1