标签:生命周期 -- Window Context Activity Android 交互 View
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,Context,Activity,Android,交互,View 来源: https://blog.csdn.net/qq_24897723/article/details/122468311
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。