看不清的话可以可以将图片在新窗口中打开,以原图的大小显示。
 
 
AS一共有三种视图.我们来分别分析每一种视图的作用.

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

图片中的链接
Android的Module推荐这么写.gitignore文件
/build
*.iml
Android的项目.gitignore文件推荐这么写
# Built application files
*.apk
*.ap_ # Files for the Dalvik VM
*.dex # Java class files
*.class # Generated files
bin/
gen/ # Gradle files
.gradle/
build/ # Local configuration file (sdk path, etc)
local.properties # Proguard folder generated by Eclipse
proguard/ # Log Files
*.log
 

二Packages视图

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

三Android视图.

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

篇二、理解Android Studio的视图和目录分析,这个是转载的更多相关文章

  1. Android开发学习总结(二)——使用Android Studio搭建Android集成开发环境

    有很长一段时间没有更新博客了,最近实在是太忙了,没有时间去总结,现在终于可以有时间去总结一些Android上面的东西了,很久以前写过这篇关于使用Android Studio搭建Android集成开发环 ...

  2. 第一篇:安装Android Studio问题及其解决方案

    ubuntu18.04配置android studio3.2.1环境 1.JDK安装与配置:https://www.cnblogs.com/yuanbo123/p/5819564.html(按照文档操 ...

  3. 【转】java提高篇(二)-----理解java的三大特性之继承

    [转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in ja ...

  4. Android Studio下添加assets目录

    Android Studio下添加assets目录 分类: Android Studio2013-11-06 18:09 10872人阅读 评论(2) 收藏 举报 android studioasse ...

  5. Android开发之深入理解Android Studio构建文件build.gradle配置

    摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applica ...

  6. gradle问题总结与理解(一篇文章带你理解android studio 与gradle 的关系)

    前言:近日在网上找了个很不错的安卓二维码美化,由于下载的项目经常出问题,且不方便依赖使用,因此我想把它写个demo,并把源码发布到jcenter中,修改还是很顺利的,运行项目到手机也没问题,发布遇到了 ...

  7. 【Android Studio安装部署系列】二、Android Studio开发环境搭建

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio开发环境安装步骤 下载Android Studio 下载地址: http://www.wanandroi ...

  8. 【Android Studio安装部署系列】四十二、Android Studio使用Eclipse中的keystore为App签名

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 从eclipse迁移到AndroidStudio,要用原Eclipse的签名文件,这样才能保证转到AndroidStudio后更新的 ...

  9. 第二篇:用Android Studio编写Hello World

    将Android Studio的环境搭建好后,第一个写Hello World测试程序.Android Studio v3.2.1. 一.新建工程 点击Start a new Android Studi ...

随机推荐

  1. CSS 标准发布流程

    随着 CSS 3 的广泛应用,很多新的 CSS 属性层出不穷,有很多陌生的 CSS 属性出现,所以经常需要去学习新的 CSS 属性.新的属性往往介绍文章不多,所以有时候就需要去看看官方文档,此时会发现 ...

  2. manacher(马拉车)算法详解+例题一道【bzoj3790】【神奇项链】

    [pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=39091399 (CSDN好像有bug,不知道为什 ...

  3. Eclipse常用小知识汇总

    原文:http://blog.csdn.net/jinzhencs/article/details/50462370 1.修改注释 自动出来的author

  4. 为何Redis要比Memcached好用

    Redis是新兴的通用存储系统,而Memcached仍有其适用领域 Memcached还是Redis? 在现代高性能Web应用中这一直是个争论不休的话题. 在基于关系型数据库的Web应用需要提高性能时 ...

  5. 《Linux性能及调优指南》----1.1 Linux进程管理

    翻译:飞哥 ( http://hi.baidu.com/imlidapeng ) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance ...

  6. python 验证码识别之pytesser以及image学习记录

    一般的步骤就是上面这些,总的来说分为三部分,去除背景,分割字符,识别. 去除背景可以通过灰度化,二值化,去噪,倾斜度校正等(一般来说灰度化和二值化都是需要的,去噪和倾斜度看情况) 安装PIL工具,下载 ...

  7. ES6里关于数字的拓展

    一.指数运算符 ES6引入的唯一一个JS语法变化是求幂运算符,它是一种将指数应用于基数的数学运算.JS已有的Math.pow()方法可以执行求幂运算,但它也是为数不多的需要通过方法而不是正式的运算符来 ...

  8. Java中hashcode的理解

    Java中hashcode的理解 原文链接http://blog.csdn.net/chinayuan/article/details/3345559 怎样理解hashCode的作用: 以 java. ...

  9. EffectiveJava(8)覆盖equals是要遵守的约定

    覆盖equals是要遵守的约定 1.覆盖种类: -类的每个1实例本质上都是唯一的 -不关心类是否提供了"逻辑相等"的测试功能(Random测试是否能随机相同数字) -超类已经覆盖了 ...

  10. Angular 学习笔记——自定义指令

    <!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...