二、Android学习第二天——初识Activity(转)

(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html)

一、 Android学习第二天——初识Activity

昨天程序搭建成功以后,就可以开发跟运行Android应用程序了,因为Activity是开发中不可或缺的组成部分,所以要对Activity有所认识。

以下两点是需要注意的:(个人总结)

  1. 凡是覆写得方法,在方法体中的第一行一定是super.XXX(),一定要先调用父类里的相应方法做必要的事情,再根据自己的需求去写其他的代码。 
  2. 如果是从头学习安卓开发,不一定要开发最新的版本,可以在较低版本(2.3.3)下进行开发,然后在高版本(4.0)下进行编译与运行,这样可以提高代码的适应能力,可以兼容高级版本。 

下面对我今天的学习进行个小结:

首先Android的四个重要部分①Activity——形象点就是一个应用程序的门面,我们在手机上看到的图形界面

②Intent——它就像一个搬用工,用于Activity之间传递数据,就像请求

③Service——这个是不可见的,是为整个应用程序提供服务支持的底层

④Content Provider——为应用程序提供数据的接口

上面的描述我自己感觉也比较抽象,今天专门研究了Activity,终于守得云开见月明:

首先进行以下学习之前需要对Android的工程项目目录有一个总体的了解:


自己总结:

src下是我们自己写得程序;

gen下是我们创建程序时系统自动生成的,切忌勿修改

assets是一个资源库,与res的区别是不会自动在R.java中自动生成id

res是一个资源库,与assets不同的是,每增加一个资源(图片等),会自动在R.java中生成对应的id

layout用于存放布局文件,用来控制Activity的显示格局

string.xml中存放的一个一个键值对,Activity可以对其进行提取

AndroidManifest.xml是系统比较重要的一个文件,存放Activity的注册信息,每生成一个Activity就应该在这里注册一个。
以上是大概的叙述,不知道表述的清不清楚

Activity学习笔记~~~

  • Activity初步介绍 

(自己总结)Activity是一个可见的,用于用户跟应用程序交互,可放置多个控件的一个容器。自己感觉这个Activity的概念就像是我们开发网站的一个页面,也是一个容器,只不过载体不同,一个电脑上面看,一个手机上看而已。

  • Activity注意事项,自己总结 

一个Activity是一个java类,并且一定要继承Activity类。

当一个Activity第一运行时,就会运行onCreate()方法,所以要覆写这个方法。

每一个Activity都需要在AndroidManifest.xml中进行配置。

为Activity添加必要控件(部分控件)的方法:在布局文件main.xml中进行添加,此时R.java会自动为该控件生成一个唯一的id,这时在Activity中就可以通过findViewById(R.id.XXX)进行调用啦~~~ 然后你就可以做任何你想做的事情~~~

对有面向对象语言基础的人来说,一看就明白,代码就不用贴啦

  • Activity与Intent 

形象点来说,Intent就是Activity之间的桥梁,当然也可以是其他的桥梁。今天我只学到了两个Activity之间通过Intent对象来传递数据。

Intent是一个对象,并且包含一组信息①Component name——指定要传递到哪个Activity

②Action——指定另一个Activity要做什么

③Data——传送的数据

④Categorty

⑤Extras——键值对,也是用来存储数据进行传递

⑥Flags

这里需要注意的是,这互相传递的Activity不一定非要在同一个项目工程内。

  • 四种基本控件的使用 

①TextView②EditText③Button④Menu

具体的添加方法很简单,这里就不做演示啦,明儿上图上程序~~~

这里需要注意的是Menu的添加方法与其他三个有所不同:

其他三个控件都是在对应的布局文件中进行添加,而添加Menu需要在Activity中覆写一个方法——onCreateOptionMenu(Menu menu),这样一个菜单就被创建,但是要实现功能,则需要覆写另一个方法——onOptionItemSelected(MenuItem item)为这个菜单中每个item进行功能的编写。

  • Activity的生命周期 

Activity有七个有关生命周期的函数,分别是:①onCreate

②onStart

③onRestart

④onResume

⑤onPause

⑥onStop

⑦onDestory

这里我只做个总结,具体在什么时候调用什么网上的教程都比我说的清楚

这里我觉得有两点需要注意:

一、当一个程序启动了后三个进程(onPause,onStop,onDestory),就有可能在系统资源不足时被kill掉。因为手机毕竟不是电脑,内存有限,所以安卓系统会有自己内部的算法来节省自己的资源。

二、onDestory在两种情况下可能被调用,1是在代码中调用了finish()方法,2是当系统资源不足的时候。

与Activity生命周期有必要联系的还有一个——Task

Task说白了就是一个存放Activity的堆栈,所以具有堆栈的特点——后进先出。

咱们在手机中看到的永远是处于堆栈最顶层的Activity,需要注意的是,Task中的堆栈没有排序的功能。

  • 窗口形态的Activity——这个将是我们在以后开发中使用比较广泛的一种Activity,就类似于弹出框,但是并不会完全遮挡住下层的Activity。 

使用窗口形态的Activity非常简单,只需要在AndroidManifest.xml的对应Activity注册代码中加一个属性:......android:theme="@Android:style/Theme.Dialog" /> 即可喽~~~

明天将要开始的是Activity布局的学习。其实安卓对于有java基础的人还是比较容易上手的,加油

原文地址:https://www.cnblogs.com/jenson138/p/4017603.html