#Android项目的目录结构
* Activity:应用被打开时显示的界面 ,对应的界面就是在layout中对应id的xml布局* src:项目代码
gen下的为自动生成的目录,不要去改:
BuildConfig.java:应用是否可以debug
R.java:项目中所有资源文件的资源id,不能出现中文,所以所有的资源id不能使用中文命名* Android.jar:Android的jar包,导入此包方可使用Android的api
当导入一些项目时会有很多找不到api的错误,原因是没有对应的jar包:
项目--properties--Android--勾选相应的勾
* libs:导入第三方jar包
* assets:存放资源文件,比方说mp3、视频文件,没有资源id,使用io流来读取
* bin:存放应用编译打包后的文件
* res:存放资源文件,存放在此文件夹下的所有资源文件都会生成资源id,使用时通过id来读取
drawable-hdpi:存放图片资源 图片的命名要符合Java变量的命名规范,即使后缀名不同,文件名也不可以相同。
图片的大小版本:做屏幕适配用
drawable-ldpi:
drawable-mdpi:
drawable-xhdpi:
drawable-xxhdpi:
* layout:存放布局文件,Android中所有布局文件都是xml文件,把布局文件通过资源id指定给activity,界面就会显示出该布局文件定义的布局
在MainAcitvity.java中:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置显示内容,通过设置资源id指定该activity显示哪个布局文件
setContentView(R.layout.activity_main);
}
onCreate():on+动词:创建时该方法就被调用:activity创建时,此方法就被调用
* menu:定义菜单的样式(配置文件)
*values:
dimens.xml:定义长度的资源id
strings.xml:字符串资源问件,用来定义字符串资源 本身没有资源id,里面配置的字符串资源需要资源id
styles.xml:定义样式和主题
一个value下只能有一个string,所以要定义多个string,就要多个values
###Android的配置文件(清单文件)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.helloandorid"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8" //系统最低支持的版本 8对应2.2
android:targetSdkVersion="18" /> //目标的sdk
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher" //指定应用的图标
android:label="@string/app_name" //引用的是应用名字,更改后应用图标的名字不变,变化的是在应用程序下载处(应用管理界面的download处的)的名字
android:theme="@style/AppTheme" >
<activity
android:name="com.example.helloandorid.MainActivity"
android:label="@string/app_name" > //此处的应用名字更改的才是应用的名字(名字的id)
<intent-filter> //activity的入口
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
* 指定应用的包名
package="com.itheima.helloworld" 应用在系统中的唯一识别
android:versionCode="1" 在发布一个新版本时把这个值加1,这样,高版本就会覆盖掉低版本了。
* data/data/com.itheima.helloworld(上面代码指定的包名)* 应用生成的文件都会存放在此路径下
*project.properties:
targt=android-18:决定编译的版本 (在创建项目时 Compile With处选择的版本)
如果想更改编译的版本
1.项目--properties--Android--Target Name中直接勾选想要改成的那个版本
2.在此文件夹更改:targt=android-18,把18更改为需要的那个版本