(9 Android) 活动组件Activity

梦想与她 提交于 2020-03-21 10:11:36

(9 Android) 活动组件Activity

3.2.1 AppCompatActivity、Activity和Context

  1. AppCompatActivity

随着Android开发技术的发展,在不同的阶段(开发环境)创建Activity组件所使用的基类不同。在使用eclipse进行Android开发时,自动创建的MainActivity继承Activity,而Android Studio继承AppCompatActivity。

Activity作为Android最重要的组件之一,用于设计应用程序的用户界面,其内容来源于布局文件。在一个Activity的onCreate()方法里,使用父类的方法setContentView()呈现内容视图,并以布局文件作为参数。Activity包含了响应界面事件的代码,即具有控制器的功能。

  1. Activity作为上下文类的子类

在Java SE中,创建一个类,写个main()方法就能运行。一个类调用另一个类,需要先使用new运算符创建另一个类的实例对象。Android应用使用基于组件的设计模式,组件的运行要有一个完整的Android项目环境,在这个环境下,Activity和Service等系统组件才能够正常工作,而这些组件并不能采用普通的Java对象创建方式(使用new运行创建实例),而是要有它们各自的上下文环境。Android提供了维持程序中各组件能够正常工作的一个核心功能类----上下文类android.content.Context。

抽象类Context是Activity的父类,但不是直接父类,因为Java只支持单继承。因此,Activity继承(具有)Context类的所有方法。

3.2.2 Activity组件的基本方法

Activity组件作为用户界面,其子类AppCompatActivity提供的基本方法如图所示。

image

3.2.3 Activity类具有的扩展方法

在Android应用开发中,除了必须掌握Activity具有的基本方法外,还需要掌握一些扩展的方法,如用于数据共享存储的getPreferences()方法、用于动态加载页面布局的getLayoutlnflater()方法、开始后台服务的startService()方法、发送广播的sendBroadcast()方法、获得内容解析器方法getContentResolver()等,如下表所示。

QQ图片222.png

3.2.4 Activity的生命周期

Activity是由Android系统维护的,每个Activity除了有创建onCreate()、销毁onDestroy()两个基本方法外,还有激活方法onStart()、恢复方法onResume()、暂停方法onPause()、停止方法onStop()和重启方法onRestart()。

Activity在其生命周期中存在三种状态:运行态、暂停态和停止态。运行态是指Activity调用onStart()方法后出现在屏幕最上层的状态,此时用户通常可以获取焦点;暂停态是指Activity调用onPause()方法之后出现的状态,其上还有处于运行态的Activity存在,并且Activity没有被完全遮挡住,即处于暂停态的Activity 有一部分视图被用户所见;停止态是指当前Activity调用onStop()之后的状态,此时它完全被处于运行态的Actívíty遮挡住,即程序界面完全不被用户所见。

对于处于运行态的Actívíty,当用户按返回键退出时,将调用方法onStop()。

Actívíty组件的生命周期如下图所示。

image

image

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!