怎么编写android程序,Android实例Hello Android编写方法

新建工程

0818b9ca8b590ca3270a3433284dd417.png选择Android project

0818b9ca8b590ca3270a3433284dd417.png将会出现如下信息

0818b9ca8b590ca3270a3433284dd417.pngPriject name:工程名字

Contents:单选框一个工程还是导入现有工程

Build Target:选择使用那一个JDK

Application name:应用程序名字

Package name: 创建包

Create Activity:创建一个Activity 如果你是J2EE程序员这个就相当于struts的Action类

Min SDK Version: JDK版本

创建完毕:

0818b9ca8b590ca3270a3433284dd417.png目录介绍:

Src: java源文件即我们写的java后缀名的文件代码 在里面有我们之前所填写创建的一个MainActivity.java文件

Gen:并没有创建gen这个目录 但是为什么出现此目录呢?没错这个是Android给我们自动生成的一个目录 并且还在次目录下创建了一个R文件(此R文件后面会讲到)

Android 1.5:如果你是java程序员 就应该很熟悉 这个就书库文件 即 Android的核心文件

Assets: 没有用到过

Res.:放置资源文件的目录

Res.drawable:一般用来存储相关应用的图片以及mp3播放文件等

Res.layout:用来存储布局信息 如果你是j2ee程序员那么此目录下的文件相当于jsp文件即html文件,只是Android是以xml方式进行布局的

Res.values:存储的相关的样式文件(CSS)以及经常用到的字符串信息的声明,但是也是以xml进行封装的

AndroidManifest.xml:工程描述文件,相当于j2ee的web.xml文件 ,它可以设置第一启动的Activity文件(即j2ee的Action类)

程序编写AndroidManifest.xml(工程描述文件)

package="com.zxkj.luowei"

android:versionCode="1"

android:versionName="1.0">

android:label="@string/app_name">

我们主要关注的就是application里面的配置信息:

android:icon:

指此应用程序的图片 在模拟器里面可以看到 : 点击家的按钮

0818b9ca8b590ca3270a3433284dd417.png接着拉开抽屉

0818b9ca8b590ca3270a3433284dd417.png可以看到:

0818b9ca8b590ca3270a3433284dd417.png此图片就在:

Res.drawable(般用来存储相关应用的图片以及mp3播放文件等)

目录下

@drawable/icon

@代表在当前应用找

android:label

android:label="@string/app_name"

即在My_one_And显示的名字

这里会在我们打开values/Strings.xml文件

Hello World, MainActivity!

My_One_Android_Project

会发现一个name为app_name的String声明并且其值于我们之前模拟器所显示的标题一样

声名一个Activity类 此类在 .MainActivity下其中点代表com.zxkj.luowei

即之前配置的package="com.zxkj.luowei"

代表

0818b9ca8b590ca3270a3433284dd417.pngMy_One_Android_Project

代表一个Action能做些什么事情 这里代表此Activity是第一启动项

一般情况下此name是可以任意改动的 但是除此之外 因为sdk后台会根据这个名字来调如果你改动则找不到了

标志为第一启动项

接下来进入

MainActivity.java类

package com.zxkj.luowei;

import android.app.Activity;

import android.os.Bundle;

public class MainActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

}

会发现我们之前填写的MainActivity 类 继承自 Activity类

并且重写了此类的onCreate(Bundle savedInstanceState)方法

此方法会在实例化此类的时候一并调用(建议了解下Activity的生命周期)

import android.os.Bundle 用于映射字符串的值 可以在Android之间进行通讯

super.onCreate(savedInstanceState); 代表调用父类的方法并且将savedInstanceState传给父类

setContentView(R.layout.main);

现在打开R文件

package com.zxkj.luowei;

public final class R {

public static final class attr {

}

public static final class drawable {

public static final int icon=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;

}

}

此目录保存了res目录下的所有资源 并且给它们一个标识码 好让程序直接访问

public static final class string {

public static final int app_name=0x7f040001;

public static final int hello=0x7f040000;

}

代表Strings.xml文件下生命的String变量

此类是不可以被修改的并且当你更新

res此目录下的文件也同时被更新

如你向drawable丢进去一个

0818b9ca8b590ca3270a3433284dd417.png文件

会发现:

public static final class drawable {

public static final int icon=0x7f020000;

public static final int qkss=0x7f020001;

}

多出一个qkss

然而

setContentView(R.layout.main);

则代表

public static final class layout {

public static final int main=0x7f030000;

}

0818b9ca8b590ca3270a3433284dd417.png<?xml version="1.0" encoding="utf-8"?>

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

LinearLayout:这是一个布局信息 标志它所包含的View都是线性布局是

android:orientation:

android:orientation="vertical"

可以改成:

android:orientation="horizontal"

vertical此属性代表View是以垂直进行排序

horizontalvertical此属性代表View是以横向进行排序

android:layout_width:

android:layout_width="fill_parent"

可以改成:

android:layout_width="wrap_content"

fill_parent横向全部填充

wrap_content横向顺其改变(如图片是多大就显示多大)

当然我们还可以为它设置大小如:

android:layout_width="61px"

android:layout_height与android:layout_width类似

android:text:

android:text="@string/hello"

这里text代表是显示什么内容

@string/hello 代表在values/Strings.xml文件里面读取

我们打开values/Strings.xml文件

Hello World, MainActivity!

My_One_Android_Project

会发现一个name为hello 的String声明并且其值于我们之前模拟器所显示的内容一样

可能还有些人对于

LinearLayout

布局中的

android:orientation="vertical"

android:orientation="horizontal"

这2者不是很了解 好的现在我做一个列子:

将main.xml进行修改部分

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="此为线性布局的垂直布局"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="此为线性布局的垂直布局"

/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="此为线性布局的垂直布局"

/>

这里我多添加了几个Button 即按钮 运行起来:

0818b9ca8b590ca3270a3433284dd417.png可以看倒这就是线性垂直的效果

再将

android:orientation 改成:

android:orientation="horizontal"

0818b9ca8b590ca3270a3433284dd417.png为什么只看见一个Button呢 按下 Ctrl 不放接着按下F12就知道原因了

现在我们将

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/hello"

/>改成

android:id="@+id/text_Id"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

意思就是为TextView声明一个标识符(Id)

并且名字是text_Id

查看R文件:

public static final class id {

public static final int text_Id=0x7f050000;

}

会发现多了一个text_Id并且还分配给它一个识别码

此识别码直接指向TextView

现在我们修改MainActivity 的OnCreate方法

package com.zxkj.luowei;

import android.app.Activity;

import android.os.Bundle;

import android.widget.TextView;

public class MainActivity extends Activity {

private TextView one_Text;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

one_Text=(TextView)findViewById(R.id.text_Id);

one_Text.setText("Hello Word");

}

}

private TextView one_Text;

声明一个TextView起名叫one_Text

one_Text=(TextView)findViewById(R.id.text_Id);

找到R.id.text_Id标识码的View

在Android里面所有的视图都继承自View这个类

因此在这里我们需要强制转换

one_Text.setText("Hello Word");

为one_Text设置显示内容为Hello Word

程序运行右键设置Build Path,选中SDK版本

将鼠标移动到工程名右击:

选择……

0818b9ca8b590ca3270a3433284dd417.png此时应用程序将运行起来并弹出dos界面 即 模拟器

0818b9ca8b590ca3270a3433284dd417.png在此信息栏可以看到模拟器的运行过程:

0818b9ca8b590ca3270a3433284dd417.png可能由于等待过久 模拟器将处于省电状态 这个时候我们点击MENU可以使它运行我们的程序:

0818b9ca8b590ca3270a3433284dd417.png

这个时候将出现如下字:

0818b9ca8b590ca3270a3433284dd417.png