Android第一个应用程序helloworld项目详解
2014-09-26 16:54
477 查看
转自:/article/2742801.html
首先新建一个android项目!!
填上项目名称,选择build Target;填上包名,就建好了一个android项目,并且hello world也自动写好了!就写完了!!下面是文件分析:
1、 src目录中比较关键的有:
HelloWorldActivity类
[java] view
plaincopy
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 类别调用资源。 编译时编译器也会查看这个资源列表,没有使用到的资源就不会编译进去,为手机应用程序节省不必要没用的空间。
[html] view
plaincopy
/* 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
[html] view
plaincopy
<?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
[html] view
plaincopy
<?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;
[html] view
plaincopy
<?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了!
首先新建一个android项目!!
填上项目名称,选择build Target;填上包名,就建好了一个android项目,并且hello world也自动写好了!就写完了!!下面是文件分析:
1、 src目录中比较关键的有:
HelloWorldActivity类
[java] view
plaincopy
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 类别调用资源。 编译时编译器也会查看这个资源列表,没有使用到的资源就不会编译进去,为手机应用程序节省不必要没用的空间。
[html] view
plaincopy
/* 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
[html] view
plaincopy
<?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
[html] view
plaincopy
<?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;
[html] view
plaincopy
<?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了!
相关文章推荐
- Android第一个应用程序helloworld项目详解
- Android成长之路-HelloWorld项目详解
- Android开发(3)Andriod第一个应用程序helloworld
- Android项目文件及应用程序—目录结构详解
- Android项目文件及应用程序—目录结构详解
- Android基础学习-----创建第一个Android项目HelloWorld(二)
- 我的第一个Android应用程序HelloWorld
- 3G之Android学习第二章节<<开发第一个HelloWorld应用程序>>
- Android之路-启程2:Android开发环境简介以及编写第一个应用程序“HelloWorld”
- Android心得2.2--第一个应用程序开发过程及屏幕大小与分辨率详解
- 第一个Android项目HelloWorld
- IOS应用程序第一个项目HelloWorld(一)
- Android的第一个项目HelloWorld(疯狂Android讲义)
- android应用程序开发-第一个项目
- Android开发(3)Andriod第一个应用程序helloworld
- 创建第一个Android应用程序 HelloWorld
- 创建第一个Android项目-HelloWorld(常见错误解决)
- 我的第一个Android应用程序HelloWorld
- 用Eclipse开发Android应用程序(3): 开发第一个Android应用程序HelloWorld(上篇)
- 用Eclipse开发Android应用程序(3): 开发第一个Android应用程序HelloWorld(下篇)