活动组件(五):一个activity的例子
建立两个Activity,一个是NormalActivity,另一个是DialogActivity。首先建立这两个Activity的布局文件,如下图:


然后编写这连个Activity,如下:


接着对这两个个活动进行注册,但是从上面看来,这两个活动都是普通的活动,怎么将DialogActivity设置为对话框模式呢?在注册时候将DialogActivity的主题设置为对话框模式就可以了,如下:

然后修改MainActivity,如下:

MainActivity的布局文件如下:

活动的回收问题
当一个活动进入到停止状态之后,是有可能被系统回收的,那么加入有一个活动A,用户在A的基础上又启动了B,活动A就进入了停止状态,这个时候由于系统内存不足,将活动A回收掉了,然后用户按下了Back键回到了活动A,也还是会正常显示活动A的,只不过这时候并不执行onRestart()方法,而是会执行活动A的onCreate()方法,因为活动A在这种情况下会被重新创建一遍。但是如果在活动A中有一个文本输入框,已经输入了一些内容,再次创建的时候,之前输入的内容会全部丢失,那么这将严重影响用户体验。
查阅文档可知,Activity中还提供了一个onSaveInstanceState()的回调方法,这个方法会保证一定在活动被回收之前调用,可以使用这个方法来解决活动被回收时临时数据得不到保存的问题。

那么在onCreate()方法中可以这样写:

Bundle保存数据的方式跟Intent保存数据的形式相似。Intent还可以结合Bundle一起用于传递数据,首先将需要传递的数据保存在Bundle对象中,然后将Bundle对象放在Intent中,到了目标活动之后先从Intent中取出Bundle,再从Bundle中取出数据。
活动组件(五):一个activity的例子的更多相关文章
- 入职小白随笔之Android四大组件——活动详解(activity)
推荐Android入门书籍:第一行代码(郭霖) google官方文档地址:https://developer.android.google.cn/guide/components/activities ...
- Android组件系列----当前Activity跳转到另一个Activity的详细过程
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- Django组件(五) Django之ContentType组件
基础使用 -contenttype组件 -django提供的一个快速连表操作的组件,可以追踪项目中所有的APP和model的对应关系,并记录在ContentType表中. 当我们的项目做数据迁移后,会 ...
- 活动组件(三):Intent
大多数的安卓应用都不止一个Activity,而是有多个Activity.但是点击应用图标的时候,只会进入应用的主活动. 因此,前面我已经建立了一个主活动了,名字是myActivity,现在我再建立一个 ...
- Android-管理Activity生命周期 -暂停和恢复一个Activity
在正常的使用app时,前台的activity有时候会被可见的组件阻塞导致activity暂停.比如,当打开一个半透明的activity(就像打开了一个对话框),之前的activity就会暂停.只要ac ...
- 【Android Developers Training】 4. 启动另一个Activity
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 17. 停止和重启一个Activity
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 16. 暂停和恢复一个Activity
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 详解Android中的四大组件之一:Activity详解
activity的生命周期 activity的四种状态 running:正在运行,处于活动状态,用户可以点击屏幕,是将activity处于栈顶的状态. paused:暂停,处于失去焦点的时候,处于pa ...
随机推荐
- document.execCommand(”BackgroundImageCache”, false, true)
很多时候我们要给一些按钮或是img设置背景,而为了达到数据与表现样式分离的效果,通常背景样式都是在CSS里设定的,但是这个行为在IE会有一 个Bug,那就是因为 IE默认情况下不缓存背景图片,所以当鼠 ...
- 树莓派如何便捷的使用pi4j
问题的由来 pi4j用起来很方便,但是感觉pi4j库的命名太杂乱,啰嗦了,很容易弄混,而且好像没听说官方有自己的编译器.如果没有智能点的编辑器的话,写起来真要命,但是树莓派运行Eclipse不太现实, ...
- Difference between _, __ and __xx__ in Python
When learning Python many people don't really understand why so much underlines in the beginning of ...
- 自己写的一个DirectUI库,基础控件基本都已实现
http://download.csdn.net/detail/pcradio/9254881 http://blog.csdn.net/pcradio
- Emiller's Advanced Topics In Nginx Module Development
Emiller的Nginx模块开发指南 By Evan Miller DRAFT: August 13, 2009 (changes) 翻译:Kongch @2010年1月5日 0:04am -- 2 ...
- windows10 环境下theano安装
前言:我用的是 Anaconda2 安装python 1. 在Anaconda prompt中输入 conda install mingw libpython 2. 添加环境变量 C:\Anacond ...
- 我的工具箱之VNC
下载地址:http://pan.baidu.com/s/1bovEoZ9 这个工具可以连接到Linux并进行可视化操作. 如何搭建VNC环境请见 在centOS上安装VNC 2016年2月26日11: ...
- https://my.oschina.net/huangyong/blog/161419
https://my.oschina.net/huangyong/blog/161419
- TortoiseGit使用与操作
使用 Git命令有时候确实不怎么方便,特别是每次都要输入密码,如果配置 SSH 的方式,又实在是很麻烦.(当然,必须使用 Windows 神器才有方便友好的客户端图形界面啦!!!) 1.克隆项目 打开 ...
- dede完美分页样式
html <div class="dede_pages"> <ul class="pagelist"> ...