- 浏览: 7330486 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
Activity生命周期:
使用Bundle 在Activity 间传递数据1:
1.1从源Activity 中传递数据
Intent openWelcomeActivityIntent=new Intent(); Bundle myBundelForName=new Bundle(); myBundelForName.putString("Key_Name",inName.getText().toString()); myBundelForName.putString("Key_Age",inAge.getText().toString()); openWelcomeActivityIntent.putExtras(myBundelForName); openWelcomeActivityIntent.setClass(AndroidBundel.this, Welcome.class); startActivity(openWelcomeActivityIntent);
1.2目标Activity 中获取数据
//从Intent 中获取数据 Bundle myBundelForGetName=this.getIntent().getExtras(); String name=myBundelForGetName.getString("Key_Name"); myTextView_showName.setText("欢迎您进入:"+name);
使用Bundle 在Activity 间传递数据2:
2.1从源请求Activity 中通过一个Intent 把一个服务请求传到目标Activity 中
//从Intent 中获取数据
Bundle myBundelForGetName=this.getIntent().getExtras(); String name=myBundelForGetName.getString("Key_Name"); myTextView_showName.setText("欢迎您进入:"+name); private Intent toNextIntent;//Intent 成员声明 toNextIntent=new Intent();//Intent 定义 toNextIntent.setClass(TwoActivityME3.this, SecondActivity3.class); //设定开启的下一个Activity startActivityForResult(toNextIntent, REQUEST_ASK););
2.2开启Intent 时候,把请求码同时传递在源请求Activity 中等待Intent 返回应答结果,通过重载onActivityResult()方法
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data) { super.onActivityResult(requestCode, resultCode, data); if(requestCode==REQUEST_ASK){ if(resultCode==RESULT_CANCELED){ setTitle("Cancel****"); }else if(resultCode==RESULT_OK){ showBundle=data.getExtras();//从返回的Intent中获得Bundle Name=showBundle.getString("myName");//从bundle中获得相应数据 text.setText("the name get from the second layout:\n"+Name); } } }
☻ 第一个参数是你开启请求Intent时的对应请求码,可以自己定义。
☻ 第二个参数是目标Activity返回的验证结果码
☻ 第三个参数是目标Activity返回的Intent
2.3目标Activity 中发送请求结果代码,连同源Activity 请求的数据一同绑定到Bundle
中通过Intent 传回源请求Activity 中
- backIntent=new Intent();
- stringBundle=new Bundle();
- stringBundle.putString("myName", Name);
- backIntent.putExtras(stringBundle);
- setResult(RESULT_OK, backIntent);//返回Activity结果码
- finish();
方法名称
|
描述
|
Killable?(能否被杀掉)
|
下一个调用的方法
|
当这个Activity第一次被创建的时候,调用此方法。这个方法通常用于:1、为Activity设置所要使用的布局文件2、为按钮绑定监听器等静态的设置操作。
|
No |
||
当Activity处于可见状态时,调用此方法。
|
No |
or onStop() |
|
开始与用户进行交互时(能够获得用户焦点,可以进行点击等操作的时候),调用此方法。
|
No |
||
之前被停止,现在重新启动,调用此方法。
|
No |
||
当系统启动另外一个新的Activity时,先调用前一个Activity的此方法。这个方法通常用于:保存现有的Activity中的数据、停止动画等,这个实现方法必须非常快。
|
Yes |
or onStop() |
|
当Activity处于不可见状态时(现有的Activity被新的Activity完全覆盖时),调用此方法。
注:如果只是在现有的Activity中弹出一个对话框,没有完全覆盖现有的Activity的话是不会调用此方法的。
|
Yes |
or onDestroy() |
|
销毁Activity。
有两种情况会对Activity进行销毁:1、在系统不足以支撑现有的应用程序的情况下,系统会关闭(销毁)掉一部分系统认为不必要的Activity,以节省空间。2、程序中手动调用finish()方法进行销毁。
|
Yes |
nothings
|
实例:创建一个Android应用程序,写两个Activity,都实现以上7个方法,通过从第一个Activity跳转到第二个Activity,然后点击模拟器右侧的返回按钮,根据应用程序中输出的内容观察Activity的生命周期。
在这里顺便大致记录一下开发步骤:
1、创建一个Android应用程序
2、写两个Activity(FirstActivity、SecondActivity),都实现以上7个方法,并都输出一句语句。
3、因为要从FirstActivity跳转到SecondActivity,所以要在FirstActivity的布局文件中添加一个按钮,并且要写一个监听器,为按钮绑定OnclickListener事件。
4、不要忘记将新创建的Activity添加到AndroidManifest.xml文件中。
5、然后运行程序观察。
(这里只大致讲了一下开发流程没有将具体的代码贴出来,现在将程序打包了,有需要的可在附件中下载)
运行程序:
1、当程序刚开始运行FirstActivity的时候,控制台输出以下内容:
从控制台输出内容来看,程序先执行了FirstActivity的onCreate()方法,然后再依次执行了onStart()、onResume()方法。
2、当点击FristActivity上的按钮时,控制台输出以下内容:
从控制台输出内容来看,程序先调用了FirstActivity的onPause()方法,然后再一次调用了SecondActivity的onCreate()、onStart()、onResume()方法,最后调用了FirstActivity的onStop()方法。
3、点击模拟器右侧的返回按钮,控制台输出以下内容:
从控制台输出内容来看,程序先调用了SecondActivity的onPause()方法,然后再依次调用了
FirstActivity的onRestart()、onStart()、onResume()方法,再调用了SecondActivity的onStop()、onDestroy()方法。
注意:当点击返回的时候,这里调用的不是FirstActivity的onCreate()方法而是onRestart()方法,因为在之前FirstActivity已经被创建过了并且没有销毁,只要当FirstActivity销毁了再调用FirstActivit y的时候才会调用onCreate()方法。
发表评论
-
[转]年度最实用50款免费Android应用推荐
2012-11-08 16:39 3366据国外媒体报道,有人说Android应用市场比iPhone应用 ... -
GIS的学习(四十五)【转】Integration of the MBTiles format on Android
2012-10-22 17:13 2935转载自 http:/ ... -
GIS的学习(四十四)osmdroid sdcard检查
2012-10-15 16:12 2330在许多应用中使用到sdcard的检查,在osmdro ... -
GIS的学习(四十三)osmdroid基于几个经典代理类
2012-10-15 16:06 2624在osmdroid中给基于位置的代理类如下: pack ... -
Android中PopupWindow的用法(位置、动画、焦点)
2012-10-12 14:12 11513在Android中有很多级别的Window,不同级别的Wind ... -
【转】Android根据分辨率进行单位转换-(dp,sp转像素px)
2012-10-11 09:18 27126Android系统中,默认的单位是像素(px)。也就是说,在没 ... -
GIS的学习(二十九)Osmdroid 离线地图存放位置的研究和详细分析
2012-09-23 11:49 11513在手机通过osmdroid调用离线地图必须放在 ... -
GIS的学习(二十八)Osmdroid相关的开源项目
2012-09-23 11:31 25389osm 数据格式(openstreet map)与Ro ... -
GIS的学习(二十七)通过geoserver的georss访问第三方地图
2012-09-23 00:34 3598在geoserver中如果想调用第三方地图可以采 ... -
android中使用 定时更新界面定时器Timer的使用
2012-09-22 22:09 25513handler的使用 一、Handler的定义: ... -
【转】Android应用程序的自动更新升级(自身升级、通过tomcat) .
2012-09-16 15:03 7356http://blog.csdn.net/mu0206mu/a ... -
GIS的学习(二十七)OGC 的WCS WFS 及WMS 服务
2012-09-11 22:22 12103http://www.gisall.com/?6678/v ... -
GIS的学习(二十六)geotools 使用 部分代码总结
2012-09-11 22:20 5692前段时间的一个项目 本来用ae完成了种种的 查询,空间分析等等 ... -
GIS的学习(二十五)geoserver wms中的各种操作API详细讲解和使用
2012-09-10 17:42 9696官方geoserver中WMS服务中几种操作的API的详细说明 ... -
GIS的学习(二十四)android异步调用geoserver wms中的地图
2012-09-10 17:38 8153在geoserver的客户端通过wms的GetMap实现 ... -
GIS的学习(二十三)geoserver中CQL和ECQL的使用
2012-09-10 16:29 6618以下引用自官方文档: CQL and ECQL¶ CQ ... -
GIS的学习(二十二)osmdroid中添加縮放控件
2012-09-06 23:09 2783package com.geoserver.osmdroid; ... -
GIS的学习(二十一)在osmdroid 地图中添加marker 并添加事件
2012-09-06 22:27 6609我有 osmdroid,overlayswithf ... -
GIS的学习(二十)基于Geoserver的WFS服务与Openlayers实现地理查询
2012-08-30 18:48 11400基于Geoserver发布的wfs服务,与Openlayers ... -
GIS的学习(十九)Geoserver使用添加,删除,查询地图中的POI
2012-08-30 17:28 10347在geoserver自定义的地图中通过geoserver ...
相关推荐
### Android之Activity的生命周期与Activity间的跳转及数据传递 #### Activity的概念与作用 在Android应用开发中,`Activity`是四大组件之一,主要负责管理应用程序的用户界面(UI)。一个Activity代表一个屏幕上的...
**Activity生命周期** Activity的生命周期包括了从创建到销毁的各个阶段,主要有以下7个关键状态: 1. **创建(Created)**:当Activity首次被创建时,会调用`onCreate()`方法。在这里,通常进行初始化工作,如...
1. **初始状态**:当Activity首次被创建时,会经历`onCreate()`方法,这是Activity生命周期的第一个回调,用于进行初始化工作,如设置布局、数据绑定等。 2. **启动状态**:`onStart()`方法紧接着`onCreate()`,...
本篇文章将详细探讨Activity生命周期的各个阶段及其转换,以及如何在这些阶段中适当地管理资源。 一、Activity生命周期的基本阶段 1. 创建(Creation): - **onCreate()**:Activity的起点,系统在此方法中初始...
那么,如何管理 Activity 的生命周期,避免数据丢失和恢复状态信息呢? Activity 生命周期 Activity 生命周期包括以下几个状态: 1. onCreate():Activity 创建时调用 2. onStart():Activity 启动时调用 3. ...
Activity生命周期是Android开发中至关重要的一环,因为它决定了应用如何响应用户操作和系统事件。理解Activity的生命周期对于编写高效、稳定且用户体验良好的应用至关重要。 Activity的生命周期由多个关键状态组成...
当PopupWindow需要向Activity传递数据时,只需调用已实现的接口方法即可。这样做的好处是保持了PopupWindow和Activity之间的解耦。 3. **静态变量**:创建全局静态变量,可以方便地在PopupWindow和Activity之间共享...
理解Activity的生命周期和Intent的传值机制对于Android开发者来说至关重要。 Activity的生命周期分为三个主要阶段:启动(Start)、运行(Running)和销毁(Destroy)。在启动过程中,Activity会经历onCreate()、...
### Android的Activity生命周期详解 #### 一、Activity生命周期概述 在Android开发中,理解Activity的生命周期至关重要。Activity是Android四大组件之一,它负责为用户提供一个可视化的交互界面。每个Activity都有...
这是Activity生命周期的第一个回调,通常在这里进行初始化工作,如设置布局、数据绑定等。 2. **启动(Initialization)**:创建后,如果Activity可见但部分被遮挡,`onStart()`会被调用,使Activity变得可见。这个...
**Activity生命周期与MVP的绑定**: 1. **生命周期回调**:在Activity的生命周期回调中,我们需要合理地管理Presenter。在onCreate()中初始化Presenter,在onStart()和onResume()中可以执行一些准备工作。在onPause...
Activity生命周期是指Activity从创建到销毁的整个过程。生命周期可以分为三个阶段:创建、运行和销毁。 1. 创建阶段:包括onCreate、onStart、onResume三个方法。这三个方法都是系统自动调用的,用于初始化Activity...
2、启动activity-显示启动和隐式启动: 3、隐式启动自己的activity 4、获取隐启动传递过来的data数据 5、显示启动传递数据 6、禁用掉横竖屏切换 7、开启activity获取返回值-startActivityForResult:
在Android应用开发中,Activity是用户界面的基本单元,它的生命周期管理是开发者必须深入理解的关键概念。本篇文章将探讨Activity的生命周期、launchMode属性以及onActivityResult方法的使用。 首先,我们来详细...
这是Activity生命周期中的活动状态。 4. **onPause()**:当Activity失去焦点但仍然部分可见(例如,弹出一个透明或半透明的对话框)时调用。在这个阶段,你应该保存非持久性数据并停止耗时操作。 5. **onStop()**...
在工作示例WorKDemo中,可能包含了展示这些概念的实际代码和步骤,你可以通过查看和运行这个示例来更直观地理解Activity间的通信和生命周期管理。通过深入理解和实践,你将能够更好地设计和优化你的Android应用。...
4. **注意生命周期**:在使用Bundle传递数据时,需要注意Activity和Fragment的生命周期。当Activity或Fragment被销毁后,它们保存的Bundle数据可能会丢失。因此,对于跨Activity的数据传递,一般推荐使用Parcelable...
- 生命周期管理:了解Activity的生命周期,合理处理数据在不同状态下的保存和恢复。 最后,通过实践12ActivityShareData这个项目,你可以更好地理解和掌握这些方法。该项目可能包含了各种数据传递方式的实例,有助...
一、Activity生命周期 Activity的生命周期是开发者必须理解的关键概念,因为它决定了何时以及如何执行代码。主要的生命周期回调方法包括: 1. `onCreate()`: 当Activity首次创建时调用,用于初始化界面和基本设置...
接下来,我们关注Intent在Activity生命周期中的作用。当一个Intent被用来启动一个新的Activity时,它会参与到Activity的创建和恢复过程中。以下是Activity的生命周期关键点: 1. **onCreate()**: 当Activity首次...