安卓学习2——项目结构

原创 ziyingyewu 随笔 安卓手机 99阅读 2018-01-31 16:13:12 举报

先从菜鸟教程的工程相关解析(各种文件,资源访问) 入手

1.8 工程相关解析(各种文件,资源访问) | 菜鸟教程 http://www.runoob.com/w3cnote/android-tutorial-project-src-analysis.html

安卓学习2——项目结构

重点:

  1. 谷歌不支持除了Android Studio之外的开发工具,所以开发工具选择用Android Studio
  2. java:我们写Java代码的地方,业务功能都在这里实现
    res:存放我们各种资源文件的地方,有图片,字符串,动画,音频等,还有各种形式的XML文件
  3. 说到这个res目录,另外还有提下这个assets目录,虽然这里没有,但是我们可以自己创建,两者的区别在于是否前者下所有的资源文件都会在R.java文件下生成对应的资源id,而后者并不会;前者我们可以直接通过资源id访问到对应的资源;而后者则需要我们通过AssetManager以二进制流的形式来读取!对了,这个R文件可以理解为字典,res下每个资源都都会在这里生成一个唯一的id!
  4. 使用mipmap会在图片缩放在提供一定的性能优化,分辨率不同系统会根据屏幕分辨率来选择hdpi,mdpi,xmdpi,xxhdpi下的对应图片

如果你想禁止Android不跟随屏幕密度加载不同文件夹的资源,只需在AndroidManifest.xml文件中添加android:anyDensity="false"字段即可!

5.
drawable:存放各种位图文件 当前项目的建议是只用jpg和png

6.
layout:该目录下存放的就是我们的布局文件,另外在一些特定的机型上,我们做屏幕适配,比如480*320这样的手机,我们会另外创建一套布局,就行:layout-480x320这样的文件夹!

7.
menu:在以前有物理菜单按钮,即menu键的手机上,用的较多,现在用的并不多,

8.
接下来说下values目录:

demens.xml:定义尺寸资源
string.xml:定义字符串资源
styles.xml:定义样式资源
colors.xml:定义颜色资源
arrays.xml:定义数组资源
attrs.xml:自定义控件时用的较多,自定义控件的属性!
theme主题文件,和styles很相似,但是会对整个应用中的Actvitiy或指定Activity起作用,一般是改变窗口外观的!可在Java代码中通过setTheme使用,或者在Androidmanifest.xml中为<application...>添加theme的属性!

9.
你可能看到过这样的values目录:values-w820dp,values-v11等,
前者w代表平板设备,820dp代表屏幕宽度;
v11这样代表在API(11),即android 3.0后才会用到的!

10.
raw目录: 用于存放各种原生资源(音频,视频,一些XML文件等),我们可以通过openRawResource(int id)来获得资源的二进制流

11.
还有个动画的,动画有两种:属性动画和补间动画:
animator:存放属性动画的XML文件
anim:存放补间动画的XML文件

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复