您的位置:首页 > 移动开发 > Android开发

Android第一个应用程序helloworld项目详解

2011-12-05 23:57 603 查看
首先新建一个android项目!!

填上项目名称,选择build Target;填上包名,就建好了一个android项目,并且hello world也自动写好了!就写完了!!下面是文件分析:



1、  src目录中比较关键的有:

HelloWorldActivity类

packagecn.csdn.android.hello;
importandroid.app.Activity;//->导包
importandroid.os.Bundle;
publicclass HelloWorldActivity extends Activity {//继承了Activity
@Override
public void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}


这是新程序专桉中的主要程序区块。我们开发 Android 程序的多数时间,都是在 src 目录下和 Android 打交道。

2、  gen/自动生成目录:gen 目录中最关键的程序就是 R.java 档。R.java 这个档是自动产生的。会由 ADT 插件自动根据你放入 res 目录的 XML 描述文件、图像等资源,同步更新修改'R.java' 这个文件中。所有的 Android 程序中都会有以 R.java 为名的这个文件,你完全不需要,也应避免手工修改 R.java 这个文件。

R.java 中自动产生的R类别就像是个字典一样,包含了使用者界面、图像、字串等各式的资源与相应的编号 (id) 。 Android 应用程序中很多时候会需要透过 R 类别调用资源。 编译时编译器也会查看这个资源列表,没有使用到的资源就不会编译进去,为手机应用程序节省不必要没用的空间。

/* AUTO-GENERATED FILE.  DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found.  It
* should not be modified by hand.
*/

package cn.csdn.android.heley;

public final class R {
public static final class attr {
}
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
public static final class layout {
public static final int main=0x7f030000;
}
public static final class string {
public static final int app_name=0x7f040001;
public static final int hello=0x7f040000;
}
}


3、res/ 中的文件 :

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />

</LinearLayout>
strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

<string name="hello">Hello World, HelloWorldActivity!</string>
<string name="app_name">HelloWorld</string>

</resources>


 layout/ 版面配置 (layout) 目录layout目录包含所有使用 XML 格式的界面描述文件。layout中的 XML 界面描述档就像写网页时用到的 HTML 档桉一样,用来描述萤幕上的版面编排与使用的界面元件。 XML 界面文件描述的内容可以是整张萤幕,也可以只描述一部分的界面 ( 例如描述用来产生对话框的界面元件 ) 。

虽然你也能直接通过 Java 来建立使用者界面,不过透过 XML 描述档来建立使用者 界面相对更简单,架构也更清晰,以后维护时更容易釐清问题。要使用这些界面元件,应透过R.java档中自动产生的R类别来调用。

values/ 参数值 (value) 目录values目录包含所有使用 XML 格式的参数值描述文件,可以在此添加一些额外的资源如字串 ( 很常用 ) 、颜色、风格等。使用时也是透过R  类别来调用。

4、Android 功能清单!!AndroidManifest.xml;

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cn.csdn.android.heley"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="7" />

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".HelloWorldActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>


AndroidManifest.xml是 Android 程序的功能清单,应用程序在这离列出该工程所提供的功能。当应用程序开启时,会提供诸如内容提供者 (ContentProvider) 、处理的资料类型、 实际运行的类别、跨应用程序的资讯等等讯息。你可以在此指定你的应用程序会使 用到的服务 ( 诸如电话功能、网路功能、 GPS 功能等 ) 。当你新增一个页面行为类别 (Activity) 时 ,

你也需要先在此注册这个新增的 Activity 类别后,才能顺利调用。

  

接下来说一下项目有时候会有错误,解决方案:1、随便在java类中的一个地方排一个空格,再改回来,保存一下,有时候那个R.java不知道怎么回事不自动更新,再重新保存一下就好了,这是经验!!2、菜单有一个project下有一个clean清除,执行一下,项目会自动更新一下,这就没事了!如果这两个方法还是不行的,那有可能是你写的程序有问题!!3、还有一个经验,就是你在导入一个android项目,比如是别人写的,但是是程序没有错,但是你导进入就错了,可能是你的构建路径需要添加android的系统类库,右击项目构建路径,在打开的窗口右边有个android,在右边选择你的类库,然后应用,再返回到你的java
build path中选择添中libraries里的add library一直next就ok了!


参考资料:深入浅出
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息