《第一行代码》学习笔记11-活动Activity(9)
1.android:theme,是用于给当前活动指定主题的,Android系统内置很多主题可以选择,@android:style/Theme.Dialog则是
让DialogActivity使用对话框式的主题。
2.onSaveInstanceState()回调方法,该方法会保证一定在活动被回收之前调用,故我们可以通过该方法解决活动被回收时临时
数据得不到保存的问题。onSaveInstanceState()方法会携带一个Bundle类型的参数,Bundle提供了一系列的方法用于保存数据,
比如可以使用 putString()方法保存字符串,使用putInt()方法保存整型数据,等等。
每个保存方法传入两个参数,第一个是键,用于后面从Bundle中取值,第二个是真正要保存的内容。
3.Intent可以结合Bundle一起用于传递数据,首先,把需要传递的数据都保存在 Bundle中->再将Bundle对象存放在Intent中->
到了目标活动后先从Intent中取出Bundle,再从Bundle中一一取出数据。
4.活动的启动模式一共有4种:standard, singleTop, singleTask, singleInstance,可以在AndroidManifest.xml中通过给
标签指定android:launchMode属性来选择启动模式。
(1)standard模式:每当启动一个新的活动,就会在返回栈中入栈,并处于栈顶位置。对于使用standard模式的活动,系统不会
在乎这个活动是否已经在返回栈中存在,每次启动都会创建该活动的一个新的实例。
(2)singleTop模式:在启动活动时如果发现返回栈的栈顶已经是该活动,则认为可以直接使用它,不会在创建新的活动实例。
(3)singleTask模式:每次启动该活动时系统首先会在返回栈中检查是否存在该活动的实例,如果发现已经存在则直接使用该
实例,并把在这个活动之上的所有活动统统出栈,如果没有发现就会创建一个新的活动实例。
(4)singleInstance模式:会启用一个新的返回栈来管理这个活动,(其实如果singleTask模式指定了不同的taskAffinity,也会
启动一个新的返回栈),不管是哪个应用程序来访问这个活动,都共用同一个返回栈,也就解决了共享活动实例的问题。
转载于:https://www.cnblogs.com/Iamasoldier6/p/5007892.html
《第一行代码》学习笔记11-活动Activity(9)相关推荐
- 第一行代码学习笔记第六章——详解持久化技术
知识点目录 6.1 持久化技术简介 6.2 文件存储 * 6.2.1 将数据存储到文件中 * 6.2.2 从文件中读取数据 6.3 SharedPreferences存储 * 6.3.1 将数据存储到 ...
- 第一行代码学习笔记第二章——探究活动
知识点目录 2.1 活动是什么 2.2 活动的基本用法 2.2.1 手动创建活动 2.2.2 创建和加载布局 2.2.3 在AndroidManifest文件中注册 2.2.4 在活动中使用Toast ...
- 第一行代码学习笔记第三章——UI开发的点点滴滴
知识点目录 3.1 如何编写程序界面 3.2 常用控件的使用方法 * 3.2.1 TextView * 3.2.2 Button * 3.2.3 EditText * 3.2.4 ImageView ...
- 第一行代码学习笔记第八章——运用手机多媒体
知识点目录 8.1 将程序运行到手机上 8.2 使用通知 * 8.2.1 通知的基本使用 * 8.2.2 通知的进阶技巧 * 8.2.3 通知的高级功能 8.3 调用摄像头和相册 * 8.3.1 调用 ...
- 第一行代码学习笔记第七章——探究内容提供器
知识点目录 7.1 内容提供器简介 7.2 运行权限 * 7.2.1 Android权限机制详解 * 7.2.2 在程序运行时申请权限 7.3 访问其他程序中的数据 * 7.3.1 ContentRe ...
- 第一行代码学习笔记第五章——详解广播机制
知识点目录 5.1 广播机制 5.2 接收系统广播 * 5.2.1 动态注册监听网络变化 * 5.2.2 静态注册实现开机广播 5.3 发送自定义广播 * 5.3.1 发送标准广播 * 5.3.2 发 ...
- 安卓教程----第一行代码学习笔记
安卓概述 系统架构 Linux内核层,还包括各种底层驱动,如相机驱动.电源驱动等 系统运行库层,包含一些c/c++的库,如浏览器内核webkit.SQLlite.3D绘图openGL.用于java运行 ...
- 第一行代码学习笔记第十章——探究服务
知识点目录 10.1 服务是什么 10.2 Android多线程编程 * 10.2.1 线程的基本用法 * 10.2.2 在子线程中更新UI * 10.2.3 解析异步消息处理机制 * 10.2.4 ...
- 第一行代码学习笔记第九章——使用网络技术
知识点目录 9.1 WebView的用法 9.2 使用HTTP协议访问网络 * 9.2.1 使用HttpURLConnection * 9.2.2 使用OkHttp 9.3 解析XML格式数据 * 9 ...
- 第一行代码学习笔记第四章——探究碎片
知识点目录 4.1 碎片是什么 4.2 碎片的使用方式 * 4.2.1 碎片的简单用法 * 4.2.2 动态添加碎片 * 4.2.3 在碎片中模拟返回栈 * 4.2.4 碎片和活动之间进行通信 4.3 ...
最新文章
- property_get 与 property_set 的返回值(转载)
- 将表单中查询参数转换为json
- 如何判断一个字符串的编码类型?
- MMC无法创建管理单元
- 若川邀你进 源码共读 群~长期交流学习
- Linux 下wifi 驱动开发(三)—— SDIO接口WiFi驱动浅析
- DataGridView数据导入到Excel 中
- 【android】ActivityGroup初体验
- php7 打开错误提示,PHP7如何开启具体错误显示
- python pygame sdl2教程_无法安装pygame sdl2
- java 词云_Word Cloud (词云) - JavaScript-Go语言中文社区
- paip. java的 函数式编程 大法
- macOS中LaTeX报错Package fontspec Error: The font “SimHei“ cannot be found
- koreader下载_kindle koreader
- c语言链表学生考勤,(完整word版)学生考勤管理系统
- 厦门大学计算机保研学校,厦门大学计算机科学系(专业学位)计算机技术保研夏令营...
- WPF—TimeLine类
- 高企认定人员及研发费要求?
- 上海气象局 mysql_根据中国气象局提供的API接口实现天气查询
- Windows 之 win SMB(smb) 功能的开启设置和使用的简单说明
热门文章
- 【MySQL】数据库基本操作、表的操作
- mysql数据库用doc命令_MySQl数据库常用的DOS命令
- linux mysql导出乱码问题_[MYSQL]将数据从5.0版本导入到4.1.7版本中出现乱码问题解决方案...
- linux根目录如何改代码,linux怎样修改目录字体颜色
- oracle手注,oracle手注
- mysql 编码种类_MySQL 编码
- LettCode50. Pow(x, n)
- 用git上传自己的第一个github项目
- 安装caffe时出现“MySQL”不是内外不wenjian
- 多进程通信相关函数归纳