现在的位置: 首页 > 综合 > 正文

android入门基础总结(1) —-四大组件

2013年10月28日 ⁄ 综合 ⁄ 共 2552字 ⁄ 字号 评论关闭

                               学习android总结(1

                                                        -------四大组件

        初接触android,能力有限,这里只简单讲解一下自己对android组件的理解,并重点描述activity。

        Android程序由四大部分组成:activity, service, Content Provider, BroadCast Receive. 一个程序中至少要有一个activity来管理程序的前台view,下面分别对android application四大组件作用描述下:

1 Activity

        Activity是android程序与用户交流的桥梁,程序员通过acivity可以将前端服务(如View布局,各种事件消息)展现给用户,是android最基本的模块之一。一个activity通常展现为一个可视化的用户界面,在一个用户界面中的activity可以调用其他的activity来启动另个用户界面。多个独立activity(之间联系需要传值)一起工作组成了一个android应用程序(至少有一个activity)。通过调用Activity.setContentView()方法来设置展现activity的窗口的视图。之后可以实例控件(Button,EditView,TextView等)或事件来设计自己的用户界面。

      Activity有自己的生命周期:

      *  OnCreate() 大部分情况都要重写这个方法。创建的时候会调用这个方法。设置这个Activity设置布局控件,初始化数据等。

      *  OnStart() 当控件被我们看到的时候,就调用OnStart()方法 在OnCreate()之后 或者OnStop()后调用在回到某个界面。

      *OnResume() 当重新获得用户焦点的时候就调用。(具体的有待实践)

      *onPause() 保护现场用的,知识暂时的失去焦点,可能被另外一个透明的Dialog窗口覆盖,但是他仍然和窗口管理器保持连接,系统可以继续保护Activity的一切活动。

      *onStop()  停止和OnStart()对应,注意OnStop()和OnPause()不一样的地方是他是完全被另外一个窗口覆灭。系统不能继续保持Activity的内部状态。

      *onDestory()销毁,到此这个activity终于死掉。

       具体流程图如下:

 

      创建一个Activity的要点

                       1.一个Activity就是一个类,并且这个类要继承Activity

                       2.需要重写onCreate方法启动这个Activity

                       3.要在Androidmanifest.xml进行配置(四大组件都要进行配置),与类名相同,并且不要忘了在前加“.“。

                       4.Activity添加您设计的用户界面的控件。

 

2 service

        Service是一种可以运行很长时间的程序,但她却没有用户界面,是管理android程序的后台服务。例如在activity处理前台界面时,Service可以再后台干自己的实情,如我们经常用到的后台播放音乐,多媒体播放器activity可能会启动一个service在后台播放音乐。或者从网络上获取数据,或者执行一些运算,并把运算结构提供给activity展示给用户。

与activity以及其它组件一样,service同样运行在应用程序进程的主线程中。所以它们不能阻塞其它组件或用户界面,通常需要为这些service派生一个线程执行耗时的任务。通过startService(intent service)来启动一个Service,通过Context.bindService()可绑定一个Service。

生命周期:onCreate()->onStart()->onDestory() 

创建一个Service要点:

                     1.  创建一个类,要继承Service

                     2.  要在androidManifest.xml中进行配置

                     3.  在Activity中配置调用它

3 Broadcase receiver

      可以使用BoradcastReceiver来让应用程序对外部事件作出响应。例如当电话呼入,下载程序的完成,电池电量低,用户改变了语言首选项(大部分的广播是由系统产生的),等外部事件带来时,broadcastreceiver进行处理。Boradcast receiver 不含任何UI,然而她们可以启动activity以响应接受到的信息,或是通过NotificationManager通知用户。可以通过多种方式使用户知道有新的通知产生:闪动背景灯、震动设备、发出声音等等。通常程序会在状态栏上放置一个持久的图标,用户可以打开这个图标并读取通知信息。可以再AndroidManifest.xml中注册,也可以运行代码时使用Context.registerReceivers()进行注册。只要注册了,事件到来时,即使程序没有启动,系统也会在需要时启动程序。各种应用还可以通过使用Context.sendBroadcast()将自己的intent
broadcast广播给其他应用程序

4 Content Provider

      一个Content Provider 类实现了一组标准的方法接口,从而能够让其他应用保存或读取此Content Provider的各种数据类型。同个这个抽象接口,外界在不知数据存储形式(数据库,文件,网上)下,可以读取和删除等操作。应用程序可以通过content provider访问其它应用程序的一些私有数据,这是Android提供的一种标准的共享数据的机制。

 

 

 

抱歉!评论已关闭.