Android学习第七天 Activity细讲

Activity生命周期的设计模式:模板方法
1、创建一系列子类去执行一组相同的流程方法
2、你需要声明一个抽象类,包含一个模板方法
3、在此模板方法中需要调用一系列的流程方法,并且所有的子类都需要调用
4、子类可以重写某一个或多个流程方法


Activity的现场保护
Android OS会在内存紧张是,主动的杀死一些后端优先级比较低的进程
通过onSaveInstanceState方法可以做一些重要变量的保护
onSaveInstanceState被调用的场景:
1、进程被异常杀死
2、系统配置发生改变时


Activity回退栈的特点
1、先进后出
2、栈顶的元素可以被用户看到并且可以与用户交互
3、栈中的元素处于停止状态
4、弹栈的元素会被销毁


  Activity的启动模式
Standard 标准模式,默认使用的模式
每启动一个就新建一个Activity的实例


SingleTask 单任务模式
启动这种模式Activity,会在整个栈中找是否有该Activity的实例,如果有, 直接跳转到此Activity的实例上,并且会将此Activity以上的Activity弹栈
SingleTop 栈顶模式
启动这种模式的Activity,会判断栈顶Activity是否需要启动的Activity实例
如果是,不会新建Activity,否则重新创建Activity实例
SingleInstance 单例模式
在整个手机中一个实例,以这种模式启动的Activity会新建一个栈存放次单 例,此栈中只有这一个单例


Intent 七大属性
1、ComponentName 组件,指定需要启动的名称
2、Action 活动,了解系统的action
3、Category 分类,字符串类型,对Activity就行分类
4、Data 数据,一般与action结合使用,表示action动作执行的数据
5、Type 类型,表示Data的类型
6、Extra 额外信息,主要在Intent激活组件时进行数据的传递
7、Flag 标记、用来标记退回栈中的Activity




Uri
Uri Universal Resource Identifier通用资源标示符,
同网址一样,手机中的每一个资源都有一个对应的资源标示符,通过这个资源标示符,Android OS可以找到相应的资源,并进行一系列的操作
通过Uri.parse(String uri)的方式获取Uri
一个完整的Uri字符串的书写格式:scheme://host:port/path


Intent 的flag值
Intent.FLAG_ACTIVITY_NEW_TASK==singleTask
Intent.FLAG_ACTIVITY_SINGLE_TOP==singleTop
Intent.FLAG_ACTIVITY_CLEAR_TOP:通常和FLAG_ACTIVITY_NEW_TASK一起使用
FLAG_ACTIVITY_NO_HISTORY :不在栈中保存
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值