Android四大组件之服务(Activity)--复习

1.定义:是Context的子类,同时实现了window.callback和keyevent.callback,用来处理窗体和用户的交互的事件,基本上一个交互页面对应一个Activity。

2.生命周期:

oncreat()-onstart()-onResume()-onPause()-onStop()-onDestory() ;;onRestart

3.四种状态

running:当前处于栈顶并显示于界面,可与用户交互

onPauseed:页面用户可见状态,但是页面没有焦点,无法与用户交互

stoped:界面不可见,无法交互,完全覆盖

killed:界面被销毁等待系统回收

4.数据传递

intent 广播 Content provider 静态变量 File文件存取

5,Context ,Activity ,Application区别

相同点:后俩者是前者的子类,都市承载着连接上下文的作用,方便开发贯穿数据调用

不同点:维持的生命周期不同。Context是当前Activity的生命周期,Application维护的是整个项目的生命周期。为了准确的使用防止内存泄漏对于生命周期长的用Application和Context,短期则用Activity的Context

6.保存Activity的状态

1.onSaveInstanceState()接收一个Bundle类型的参数在onCreated的时候再次获取对其获取进行恢复

2.如果需要销毁或者指定情况保存数据状态,可选择将其存储在本地文件中,然后再页面展示的时候进行判断获取赋值

7.横竖屏切换

不设置 Activity 的 android:configChanges 时,切屏会重新调用各个生命周期默认首先销毁当前activity,然后重新加载。

设置 Activity的android:configChanges="orientation|keyboardHidden|screenSize"时,切屏不会重新调用各个生命周期,只会执行 onConfigurationChanged 方法。

根据需求进行不同的处理

8.Activity,Window,View三者的关系

Activity:四大组件之一,负责界面的展示与用户的交互

Window:类似与Activity的下级,Activity方法和业务的处理

View:是存在window容器的元素,Window是View的载体,View是Window的展示

Android通过Window来实现视图元素的展示。Window可以理解为一个容器,放着一个个的View,来执行具体的展示工作

9.四种启动模式

standard:默认的启动模式,依次栈顶增加

singleTop:位于栈顶则不重新创建,不在则调用onNewIntent()重新创建

singleTask:始终只存在一个对象

singleinstance:具备singleTask的特性,不同点在于存在于一个单独的任务栈

10.Activity的自动启动

1.资源相关的系统配置发生改变导致Activity被重新创建

2.系统内存不足导致优先级低的Activity被杀死

上一篇:小白初学window子系统wsl日志


下一篇:Approaches to congestion control.