====================================

下面文字只是节选,完整在附件中

====================================

4 创建一个应用程序

我们就简单的说明下,使用eclipse,创建一个android的项目:

Activity

创建的项目中,src目录包含着一些基本基于报名的的java代码。如果创建的包名叫做com.commonsware.android,那么就会创建如下的tree结构:src/com/commonsware/android/

加入在创建项目的时候,我们创建了一个叫做Now Activity.,那么我们就会在src下看到一个Now.java文件。

生成:

打开Now.java文件,会看到

package com.commonsware.android;

import android.app.Activity;

import android.os.Bundle;

public class Now extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

}

我们做如下修改:

Ps:有java基础的朋友会很容易看懂代码的作用的

package com.commonsware.android;

import java.util.Date;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

public class Now extends Activity implements View.OnClickListener {

/** Called when the activity is first created. */

Button btn;

int i = 0;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

btn = new Button(this);

btn.setOnClickListener(this);

setContentView(btn);

}

public void updateTime()

{

i++;

btn.setText("hello"+i);

}

public void onClick(View v) {

updateTime();

}

}

运行:

选中Row这个Activity,右键 run.as ..-----Open Run Dialog----New Configuration---选中需要运行的项目~~~~浏览即可

接着选择Taget

可以选择自己的Android模拟器

接着就可以运行了~~

解析Activity

下面让我们检查下下面的代码片段:

包声明应该跟我们创建project的时候保持一致。当需要引用别的包的时候,需要导入

同时,要记住,不是所有的JAVASE的类都能在Android中获得的。

可以看到,一个Activity,首先是public类型的并继承自 android.Activity这个基类。在我们这个例子中,这个Activity包含一个button按钮(记住哦,Activity我们就可以理解为一个界面,可以接受用户交互行为的)。简单的,如果我们希望按钮能够进行用户交互,比如用户按下按钮的事件,我们只需要让整个Activity类实现OnClickListener这个接口,并实现相应的方法即可。比如:

OnCreate()方法是在Activity活动启动的时候,就会被调用。第一行代码,是调用父类的相应方法,这是我们必须要做的,因为有时候我们自己做不了,只有让父类来做。我们需要对Activity进行初始化的工作,基本上都在oncreate()方法中进行。

在我们这个例子中,我们然后定义了一个按钮的实例化对象,( new Button(this)),并告诉它,将所有的按钮按下事件都传递给这个Activity(通过 setOnClickListener()),调用一个私有方法updateTime(),并最后设置了这个Activity所要显示的界面(setContentView()

使用过java Swing的朋友应该知道,比如一个 Jbutton 被按下,就会生成一个ActionEvent事件对象,这个对象就会被传递给ActionListener 监听器,这个按钮事先已经注册(或配置)到整个监听器中了。在Android中,一个按钮按下就被导致一个OnClickListener的实例调用一个onClick()方法,当然事先这个按钮也会先注册好。而这个Listener,是由某一个View(视图)提供的,这个视图恰恰是启动(或者是触发)这个事件(比如这里的click事件)。我们这里,这个View就是button。我们现在简单的理解就是:所有的视图界面上的控件,都是View,并且都可以提供各种监听接口来监听按下,触摸,状态等事件的发生。

继续,当我们打开这个Activityoncreate方法被执行。当button被按下,就会调用onClick()方法,在这个方法里执行update更新。

程序运行,,,,使用eclipse,只要run as。。即可

我们顺便看下此时别的文件:

看系统为我们创建了这么一个Android项目哦

除了Now是我们自己写的,别的,,,,,,貌似都没有动吧~~

项目的配置文件

因为我们做了如下的配置:

那么,我们这个程序就会在手机的主界面中显示出来,我们看下

上面的Now就是我们的这个小例子了~

虽然我们没有用到下面这个文件,但是系统也会自动生成一个默认的

这个文件下面就会降到,是android的布局界面

下面是Res文件夹

里面包含了基本的三个子文件夹:

drawable包含图片的,我们这里是系统自动分配的icon.png

layout:包含的是系统中需要用到的布局,均为xml文件

values:包含系统需要用到一些资源常量,比如字符串Strings,颜色Color等。我们后面都会介绍到~

需要注意的是gen文件夹,这个文件夹我们是不需要手动修改的,里面只有一个R.java文件。

这个R类里面建立了项目中res资源文件夹中所有资源的索引,为每一个资源都建立了一个int类型的索引值

我们看一眼

都是静态类型的常量,作为资源的id,我们可以在程序里用R.xxx.xxx的方式来访问这些资源哦~~

还有,R是系统自动创建的,我们不能修改~~

更多相关文章

  1. eclipse使用appcompat_v7库无法找到android:Widget.Material.Act
  2. Android教程之android数据库编程
  3. Android(安卓)Studio sdk tools文件夹下文件缺失问题以及解决方
  4. RadioGroup和RadioButton
  5. 用Android(安卓)Studio进行NDK开发(简化流程)
  6. Android菜鸟日记29-杂记
  7. 浅谈android系统java调用C++函数传参过程
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. Android系列教程之六:TextView小组件的使
  2. 《深入浅出Android多媒体编程》即将出版,
  3. Android技术架构演进与未来
  4. android Uri详解
  5. android 兼容各个版本 读取通讯录
  6. Android(安卓)AIDL实例
  7. Android学习06-----布局管理器
  8. Android开发之旅: Intents和Intent Filte
  9. 【移动生活】Google项目副总裁安迪・鲁宾
  10. 转android123 预防Android内存泄露