2012-03-21

Android程序设计基础:

3.1 Android程序框架
3.1.1 android项目目录结构:
src——源文件
res——包含项目中的所有资源:程序图标(drawable)、布局文件(layout)、常量(values),通过Context的getResources实例化一个Resources对象,再通过getString方法取得指定索引的字符串:Resources r = this.getContext().getResources();
String appname = (String) r.getString(R.string.app_name);
gen——R.java(其他java项目中没有的),自动生成的,文件是只读模式,不能更改。定义该项目所有资源的索引文件,常量名字都与res文件夹中的文件名相同。
androidmanifest.xml——包含了该项目中所使用的Activity、Service、Receiver。Intent-filters描述了Activity启动的位置和时间。

[img]http://dl.iteye.com/upload/attachment/0065/2494/e8fff83a-b645-3bb6-bff0-e6640606b060.png[/img]

Android开发特点:代码和UI分离,在国际化和程序维护方面有着巨大的作用。

3.1.2 android应用解析
Android应用程序由4个模块构成:Activity、Intent、ContentProvider、Service。
1. Activity
Activity是最基本的模块,称之为“活动”。一个Activity通常就是一个单独的屏幕,每一个活动都被实现为一个独立的类,从活动基类中继承而来。显示由视图控件组成的用户接口,对事件作出响应。
一个新的屏幕打开后,前一个屏幕将会暂停,并保存在历史栈中。用户可以返回到历史栈中的前一个屏幕,当屏幕不再使用时,可以从历史栈中删除。
Activity代表一个用户所能看到的屏幕,主要用于处理应用程序的整体性工作,如:监听系统事件(按键事件、触摸屏事件等),为用户显示指定的View,启动其他Activity等。继承于android.app.Activity类。

2. Intent
实现Activity与Activity之间的切换,用于描述应用的功能。
两个最重要的部分:动作和动作对应的数据。典型的动作类型:MAIN、VIEW、PICK、EDIT等,动作对应的数据则以URI的形式表示。例:查看一个人的联系方式,需要创建一个动作类型为VIEW的Intent,以及一个表示这个人的URI。

自己动手把书上的例子做了一遍,比较顺利。

IntentActivity.this.finish();
如果不加上这个,就不销毁这个Activity,还可以返回。加上就销毁了。
这个不理解用this是什么意思呢?

本来基础应该在最开始的,但是那个时候没有做笔记,这两天也算回顾一下吧。