文档章节

关于两个activity传值问题(不是新生成的两个activity) intent getdata

simpower
 simpower
发布于 2014/10/08 20:46
字数 337
阅读 382
收藏 0

最新,开发项目就遇到这个问题。为了保持两个Activity原来的状态,而又需要传值,解决这个问题还是很简单:

      为了不让Activity 新生成一般要加intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);

    它表示你跳转的activity如果第一次生成了以后就不在生成了。所以,根据activity的生命周期(这个你们可以自己去跟断点),每次进入activity执行onResume方法,

@Override
    protected void onResume() {
  Log.i("onResume1111111111111111", "onResume");
  Bundle b = getIntent().getExtras();
  labelcontent = b.getString("addLabel");
  labelNumber = b.getInt("num");
  isAgainLoad = b.getBoolean("isAgainLoad");
  super.onResume();
 };

 

然后重写onNewIntent方法,这个方法就是在不onDestroy activity的同时,能够传值

@Override
 protected void onNewIntent(Intent intent) {
 
  super.onNewIntent(intent);
  setIntent(intent); 
  
 }

////////////////////////////////////////////////////////////////////////////////////////////

onCreate是用来创建一个Activity也就是创建一个窗体,但一个Activty处于任务栈的顶端,若再次调用startActivity去创 建它,则不会再次创建。若你想利用已有的Acivity去处理别的Intent时,你就可以利用onNewIntent来处理。在onNewIntent 里面就会获得新的Intent.

[html] view plaincopy

  1. @Override  

  2.         protected void onNewIntent(Intent intent) {  

  3.                 // TODO Auto-generated method stub  

  4.                 super.onNewIntent(intent);  

  5.                   

  6.         }  

如果IntentActivity处于任务栈的顶端,也就是说之前打开过的Activity,现在处于
onPause
onStop 状态的话
其他应用再发送Intent的话,执行顺序为:
onNewIntent
onRestart
onStart
onResume


本文转载自:http://blog.sina.com.cn/s/blog_66f29d750101hd8t.html

共有 人打赏支持
simpower
粉丝 24
博文 536
码字总数 38046
作品 0
海淀
程序员
Android的Notification研究

Android的Notification研究 最近在研究Android,遇到了一些Notification(通知)的问题: 1、Notification如何传递参数 2、Notification如何区别化 3、从Intent(意图)寻找Activity(活动)说起,...

天下杰论
2013/03/12
0
0
standard(默认), singleTop, singleTask和 singleInstanc

Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance。以下逐一举例说明他们的区别: standard:Activity的默认加载方法,即使某个Activity在Task栈中已经存...

丁佳辉
2015/08/06
0
0
【转】Activity的Launch mode详解 singleTask正解

转自http://hi.baidu.com/amauri3389/blog/item/a54475c2a4b2f040b219a86a.html 参见:http://mypyg.iteye.com/blog/919643 http://marshal.easymorse.com/archives/2950 http://blog.csdn.......

Leon_Lee_Fedor
2014/02/12
0
0
从问题到解决方案到应用-android-ApiDemo入口源代码学习及应用

一.问题 在android的学习中我们经常需要做做一些小demo。 (1)一个demo建立一个项目: demo多了,项目就多了,会有各种不方便。 (2)于是,建立一个demo项目来,然后,第一个Activity呢,主界...

李海珍
2012/11/24
0
4
Activity 四种启动模式

standard:Activity的默认加载方法,即使某个Activity在Task栈中已经存在,另一个activity通过Intent跳转到该activity,同样会新创建一个实例压入栈中。例如:现在栈的情况为:A B C D,在D...

hanzhankang
2014/02/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

5、前后端分离跨域问题

在以往的开发中,前后端分离也不是像现在这么热门,所谓的前端工程师也只不过是写好静态页面由Java工程师或者php工程师嵌入到页面中进行开发,这或许加重了这些工程师的工作量,而且在样式调...

永远的Chester
28分钟前
0
0
全志T3 Linux显示驱动分析

1、总体架构 全志T3处理器的显示框架是基于标准Linux的帧缓冲架构,其结构如图 1.1所示。显示控制器DE的驱动架构如图 1.2所示,包括屏蔽差异的显示管理抽象层,以及显示图层驱动、显示设备驱...

pnsam301
35分钟前
0
0
【HAVENT原创】VUE2 经验问题汇总

新建一个 Vue 实例可以有下列两种方式: 1. new 一个实例 var app= new Vue({ el:'#todo-app', // 挂载元素 data:{ // 在.vue组件中data是一个函数,要写成data () {}这种方式 i...

HAVENT
38分钟前
0
0
IO基础知识

读文件,可以使用内置的open(file,mode); with 语句自动close; 查看当前目录的绝对路径:os.path.abspath('.'); 创建目录:os.mkdir(path); 删除目录:os.rmdir(path); 拼接路径推荐使用:o...

年轻的中年大叔
41分钟前
0
0
BATJ等大厂最全经典面试题分享

金九银十,又到了面试求职高峰期,最近有很多网友都在求大厂面试题。正好我之前电脑里面有这方面的整理,于是就发上来分享给大家。 这些题目是网友去百度、蚂蚁金服、小米、乐视、美团、58、...

老道士
43分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部