android 中的activity介绍

来源:互联网 发布:七天网络阅卷怎么进入 编辑:程序博客网 时间:2024/04/27 22:13

    在android上开发应用的人都知道,应用的开发在android系统上是多么的方便,因为android就像是一个机器人,身上的每一个零件都好像是独立的,而且有些零件是可以多次使用的,这样既节省了劳力也节省了成本,开发速度上和质量上是没得说的。

    一个应用由四大组件中的部分或全部组成,而其中有一个很重要的组件也是不可或缺的一个组件就是activity。这个组件和其它的组件一样具有开放性,独立性,灵活性以及安全性。

    一个应用中可以包含很多的activity,activity类定义了它所能做的工作,包括任务的切换,activity运行的进程等。

在manifest.xml文件中有activity元素的定义,在此文件中,它通过<intentfilter>子元素用来给系统声明自己所能做的工作,就像是在系统中的intent中注册了一样,可以供其他的应用或activity来通过该intent来调用。

例如:一个用于编辑短信正文的文本编辑器activity 通过AndroidManifest.xml文件中的<intentfilter>元素告诉了系统,表明activity具有EDIT 和VIEW文本数据的能力,如果有另一个应用或activity要求EDIT和VIEW一段文本数据,则系统可以调用本activity 予以满足。

也就是说这个activity一方面供自己实用,另一方面通过intent方式可以为其他组件或应用提供服务。

   一个activity就是窗口上的一个焦点,也是一个显示界面,不一定是全屏的,例如:一个小的dialog也可以定义成一个activity,虽然它的上一个activity的显示被它压在了下面,但是只是占据了屏幕的焦点并没有完全覆盖上一个activity。

可以同时打开多个activity,这些activity会依次压入堆栈而暂时不消亡,当最上面的activity生命结束的时候,它下面的activity就会显示出来,这样做就是为了不用每次都加载一次activity,不仅节省了时间,还节省了资源消耗。为了便于几个管理,如果不想保留压在下面的几个activity还可以通过设置manifest.xml文件中的activity元素的属性noHistory等来达到此目的。

 当然activity是有生命周期的:

Java代码 
  1. public class MyActivity extends Activity {   
  2.     protected void onCreate(Bundle savedInstanceState);   
  3.   
  4.     protected void onStart();   
  5.   
  6.     protected void onResume();   
  7.   
  8.     protected void onPause();   
  9.   
  10.     protected void onStop();   
  11.   
  12.     protected void onDestroy();   
  13.   }   

这是一个activity从创建到销毁的过程,一般在开发的时候要十分注意,以节省资源消耗。

 

原创粉丝点击