编写一个基本的Android应用程序

编写一个基本的Android应用程序


本文展示如何构建一个 Android 应用程序。示例应用程序非常简单:一个修改后的 “Hello Android” 应用程序。您将进行一个微小的修改,使屏幕背景全部变为白色,以便把手机用作手电筒。这个例子不是很有创意,但是可以作为一个有用的例子。请 下载 完整的源代码。

为了在 Eclipse 中创建应用程序,选择 File > New > Android project,这将启动 New Android Project 向导。


图 1. New Android project 向导

接下来,创建一个简单的应用程序,该应用程序有一个活动,并且在 main.xml 中有一个 UI 布局。布局包含一个文本元素,您将修改这个文本元素,以显示 Android FlashLight。下面的清单显示了这个简单的布局。


清单 1. Flashlight 布局

                               <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:background="@color/all_white"><TextView      android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hello" android:textColor="@color/all_black"    android:gravity="center_horizontal"/></LinearLayout>

 

在 strings.xml 中创建两个颜色资源。


清单 2. strings.xml 中的颜色

                               <?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">Android FlashLight</string>    <string name="app_name">FlashLight</string>    <color name="all_white">#FFFFFF</color>    <color name="all_black">#000000</color></resources>

 

主屏幕布局有一个定义为all_white 的背景色。在 strings.xml 文件中,可以看到all_white 被定义为一个值为 #FFFFFF的 RGB 三元组,即纯白。

布局包含一个TextView,这实际上是一块静态文本。它是不可编辑的。文本被设为黑色,并通过gravity 属性设为水平居中。

该应用程序有一个名为 FlashLight.java 的 Java 源文件,如以下清单所示。


清单 3. Flashlight.java

                               package com.msi.flashlight;import android.app.Activity;import android.os.Bundle;public class FlashLight extends Activity {    /** Called when the activity is first created. */    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);    }}

 

该代码是直接来自 New Project 向导的模板代码:

  • 它是 Java 包 com.msi.flashlight 的一部分。
  • 它有两个 import:
    • 一个用于 activity 类
    • 一个用于 bundle 类
  • 当该活动发起后,onCreate 方法被调用,传入一个savedInstanceState。对于我们来说,不必关心这个bundle。只有在暂停然后恢复活动时才会用到。
  • onCreate 方法覆盖了同名的 activity 类方法。它调用超类的onCreate 方法。
  • 对setContentView() 的调用将关联 main.xml 文件中定义的 UI 布局。main.xml 和 strings.xml 中的任何内容都自动映射到 R.java 源文件中定义的常量。任何时候都不要直接编辑这个文件,因为它随着每次构建而改变。

运行该应用程序可以看到一个白色屏幕,其中有黑色文本。

 

图 2. flashlight 的白色屏幕

下面显示用于 FlashLight 应用程序的 AndroidManifest.xml 文件。


清单 4. 用于 FlashLight 的 AndroidManifest.xml

                               <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"      package="com.msi.flashlight"      android:versionCode="1"      android:versionName="1.0.0">    <application android:icon="@drawable/icon" android:label="@string/app_name">        <activity android:name=".FlashLight"                  android:label="@string/app_name">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application></manifest>

 

该文件是由用于 Eclipse 的 Android Developer Tools 插件自动创建的。您不需要做任何事情。

当然,这个应用程序并不是很强大。但是如果希望读点书,又不想打扰正在睡觉的爱人,或者如果需要在断电时去地下室查看保险丝盒,那么这个应用程序还是很方便的。

附件:原码在http://www.ibm.com/developerworks/cn/opensource/os-android-devel/index.html#download 感谢网友的贡献。kelehai@163.com测试

原文:http://wenku.it168.com/d_000688064.shtml

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值