这第一个Android程序非常简单,实现 让手机屏幕的背景全部变为白色,使手机具备手电筒的功能。因为是第一个应用程序,所以我们不需要什么创意,只要这个例子能够说明我们通常是怎么构建Android的应用就足够了。
创建Android项目
在Eclipse中选择File>New>Android project,出现New Android Project向导,如下图所示:
创建Android新项目
注意上图中勾选“Create Activity”(创建活动),名称为flashlight,表示该应用程序含有一个活动。
下图是创建好的项目样貌:
打开Android新项目
修改flashlight UI布局
打开mail.xml文件,修改flashlight应用程序的UI布局。这个文件的位置在
项目flashlight\res\layout中(如上图所示,点击打开layout可看到此文件)。布局中包含了一个文本原素,你可以把这个原素修改
为你想要的名字,而我们在此处命名为moandroid flashlight。下面的内容显示了这个简单的布局:
清单 1. flashlight 布局android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:background=”@color/all_white”>
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
android:text=”@string/hello”
android:textColor=”@color/all_black”
android:gravity=”center_horizontal”/>
在Eclipse中可以在Layout和mail.xml之间切换以查看效果,如下图所示:
布局(Layout)效果
创建颜色资源
打开strings.xml文件,并创建两个颜色资源,可以在flashlight\res\values下找到这个文件:
清单 2. strings.xml 中的颜色moandroid flashlight
flashlight
#FFFFFF
#000000
也可以Resources与strings.xml之间切换:
创建Android颜色资源
主屏幕布局有一个定义为all_white的背景色。在 strings.xml 文件中,可以看到all_white的值被设置为#FFFFFF,即纯白。
布局中还包含一个TextView,这实际上是一块静态文本。它是不可编辑的。文本被设为黑色,并通过gravity属性设为水平居中。
flashlight.java
搞定了UI布局,接下来我们来看看名为 flashlight.java 的 Java 源文件:
清单 3. flashlight.javapackage moandroid.flashlight;
import android.app.Activity;
import android.os.Bundle;
public class flashlight extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
该代码是直接来自 New Project 向导的模板代码:
它是 Java 包 moandroid.flashlight的一部分。
它有两个 import:
一个用于 activity 类
一个用于 bundle 类
当该活动发起后,onCreate 方法被调用,传入一个 savedInstanceState。对于我们来说,不必关心这个 bundle。只有在暂停然后恢复活动时才会用到。
onCreate 方法覆盖了同名的 activity 类方法。它调用超类的 onCreate 方法。
对 setContentView() 的调用将关联 main.xml 文件中定义的 UI 布局。main.xml 和
strings.xml 中的任何内容都自动映射到 R.java 源文件中定义的常量。任何时候都不要直接编辑这个文件,因为它随着每次构建而改变。
运行你的第一个Android应用程序
运行该应用程序可以看到一个白色屏幕,其中有黑色文本,如下图所示:
运行结果
AndroidManifest.xml
最后一项,看看这个应用程序的AndroidManifest.xml文件:
清单 4. 用于 flashlight 的 AndroidManifest.xml
package=“moandroid.flashlight”
android:versionCode=“1″
android:versionName=“1.0″>
android:label=“@string/app_name”>
ion android:name=“android.intent.action.MAIN” />
AndroidManifest.xml文件
这个文件是由用于 Eclipse 的 Android Development Toolkit 插件自动创建的,我们不需要做任何事情。
Okay,第一个Android应用程序就这样完成了,虽然看上去很简单也不是很强大,但起码它能让你的手机在你需要的时候变成一个手电筒,也许到那时你会认为它还是很方便的。