- 浏览: 7251585 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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的信息
在我们学习其他语言(javascript,C#,J2SE AWT)的时候可能会遇到模式窗体的概念,
就是一个父窗体,打开一个子窗体,关闭子窗体时候,获取父窗体界面的数值。
大致步骤:
1.一个Activity(AndroidActivityWinModelParentActivity)启动另外一个
Activity(AndroidActivityWinModelSonActivity),这里称子Activity;
2.子Activity(AndroidActivityWinModelSonActivity)通过setResult方法设置返回结果,
setResult方法带两个参数:结果码和表示为Intent的负载值;
3.父Activity(AndroidActivityWinModelParentActivity)通过onActivityResult方法
处理子Activity(AndroidActivityWinModelSonActivity)返回的结果
让子Activity有返回值
使用startActivity方式启动的Activity和它的父Activity无关,当它关闭时也不会给父Activity提供任何反馈。
你可以启动一个Activity作为子Activity,它与父Activity有内在的联系。当子Activity关闭时,它会触发父Activity
中的一个事件处理函数。子Activity最适合用在一个Activity为其它的Activity提供数据(例如用户从一个列表中选择
一个项目)的场合。
子Activity的创建和普通Activity的创建相同,也必须在应用程序的manifest中注册。任何在manifest中注册的Activity
都可以用作子Activity。
启动子Activity
startActivityForResult方法和startActivity方法工作很相似,但有一个很重要的差异。
Intent都是用来决定启动哪个Activity,你还可以传入一个请求码。
这个值将在后面用来作为有返回值Activity的唯一ID。
处理子Activity的结果
当子Activity关闭时,它的父Activity的onActivityResult事件处理函数被触发。
重写这个方法来处理从子Activity返回的结果。onActivityResult处理器接受好几个参数:
❑ 请求码
曾经用来启动子Activity的请求码。
❑ 结果码
结果码是由子Activity设置的,用来显示它的结果。它可以是任何整数值,但典型的值是Activity.RESULT_OK和Activity.RESULT_CANCELLED。
如果子Activity非正常关闭或在关闭时没有指定结果码,结果码都是Activity.RESULT_CANCELED。
❑ 数据
一个Intent来打包任何返回的数据。依赖于子Activity的目的,它可能会包含一个代表特殊的从列表中选择的数据的URI。可变通的,或额外的,子Activity可以使用“extras”机制以基础值的方式返回临时信息。
package com.easyway.win.model; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; /** * * * @Title: * @Description: 实现TODO * @Copyright:Copyright (c) 2011 * @Company:易程科技股份有限公司 * @Date:2012-7-20 * @author longgangbai * @version 1.0 */ public class AndroidActivityWinModelParentActivity extends Activity { //设置标志的请求编码 private static final int WIN_MODEL_REQUEST_CODE=0x234; private Button btnSetting; private EditText text; /** * */ /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.parent_layout); btnSetting=(Button)findViewById(R.id.btnsetting); text=(EditText)findViewById(R.id.tv_store_data); btnSetting.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //父Activitiy向子类Activity传递数据 Intent intent=new Intent(AndroidActivityWinModelParentActivity.this,AndroidActivityWinModelSonActivity.class); //设置数据信息 intent.putExtra("deliverInfo","中国人民共和共"); //备注此处启动方式为startActivityForResult(intent,请求编码)而不是startActivity(intent) //这是startActivityForResult和startActivity的重要区别, //1.是否传递请求编码 //2.是否可以调用子类的方法 startActivityForResult(intent, WIN_MODEL_REQUEST_CODE); } }); } /** * @param requestCode请求编码 * * @param resultCode 响应编码 * * @param data 子类的数据信息 * * (non-Javadoc) * @see android.app.Activity#onActivityResult(int, int, android.content.Intent) */ @Override protected void onActivityResult(int requestCode, int resultCode, Intent intent) { if (requestCode == WIN_MODEL_REQUEST_CODE) { if (resultCode == RESULT_OK) { String content=intent.getStringExtra("settingContent"); text.setText(content); } } } }
package com.easyway.win.model; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; /** * * * @Title: * @Description: 实现TODO * @Copyright:Copyright (c) 2011 * @Company:易程科技股份有限公司 * @Date:2012-7-20 * @author longgangbai * @version 1.0 */ public class AndroidActivityWinModelSonActivity extends Activity { private Button btnSave; private Button btnCancel; private EditText text; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //获取父窗体的intent信息 final Intent intent=getIntent(); String initText=intent.getStringExtra("deliverInfo"); setContentView(R.layout.son_layout); btnSave=(Button)findViewById(R.id.btn_save); btnCancel=(Button)findViewById(R.id.btn_cancel); text=(EditText)findViewById(R.id.infoContent); //设置初始化信息 text.setText(initText); //添加事件 btnSave.setOnClickListener(new OnClickListener() { public void onClick(View v) { //获取用户输入信息 String content=text.getText().toString(); //设置在intent中存储 intent.putExtra("settingContent", content); //设置回调的方法 setResult(Activity.RESULT_OK, intent); //关闭当前的窗体 finish(); } }); btnCancel.setOnClickListener(new OnClickListener() { public void onClick(View v) { text.setText(""); setResult(RESULT_CANCELED, null); finish(); } }); } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:focusable="true" android:focusableInTouchMode="true" > <Button android:id="@+id/btnsetting" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="设置" /> <EditText android:id="@+id/tv_store_data" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="false" android:lines="5" android:maxLines="10" android:hint="用于存储子Activity返回的数据"> </EditText> </LinearLayout>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <EditText android:id="@+id/infoContent" android:layout_width="match_parent" android:layout_height="357dp" android:layout_weight="0.90" android:height="600dp" android:hint="请输入信息,点击保存传递子Activity,点击取消不传递数据,请知悉!" android:lines="100" android:maxLines="200" > </EditText> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <Button android:id="@+id/btn_save" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="保存" > </Button> <Button android:id="@+id/btn_cancel" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="取消" /> </LinearLayout> </LinearLayout>
发表评论
-
[转]年度最实用50款免费Android应用推荐
2012-11-08 16:39 3260据国外媒体报道,有人说Android应用市场比iPhone应用 ... -
GIS的学习(四十五)【转】Integration of the MBTiles format on Android
2012-10-22 17:13 2879转载自 http:/ ... -
GIS的学习(四十四)osmdroid sdcard检查
2012-10-15 16:12 2277在许多应用中使用到sdcard的检查,在osmdro ... -
GIS的学习(四十三)osmdroid基于几个经典代理类
2012-10-15 16:06 2559在osmdroid中给基于位置的代理类如下: pack ... -
Android中PopupWindow的用法(位置、动画、焦点)
2012-10-12 14:12 11424在Android中有很多级别的Window,不同级别的Wind ... -
【转】Android根据分辨率进行单位转换-(dp,sp转像素px)
2012-10-11 09:18 27061Android系统中,默认的单位是像素(px)。也就是说,在没 ... -
GIS的学习(二十九)Osmdroid 离线地图存放位置的研究和详细分析
2012-09-23 11:49 11355在手机通过osmdroid调用离线地图必须放在 ... -
GIS的学习(二十八)Osmdroid相关的开源项目
2012-09-23 11:31 25182osm 数据格式(openstreet map)与Ro ... -
GIS的学习(二十七)通过geoserver的georss访问第三方地图
2012-09-23 00:34 3524在geoserver中如果想调用第三方地图可以采 ... -
android中使用 定时更新界面定时器Timer的使用
2012-09-22 22:09 25432handler的使用 一、Handler的定义: ... -
【转】Android应用程序的自动更新升级(自身升级、通过tomcat) .
2012-09-16 15:03 7272http://blog.csdn.net/mu0206mu/a ... -
GIS的学习(二十七)OGC 的WCS WFS 及WMS 服务
2012-09-11 22:22 12017http://www.gisall.com/?6678/v ... -
GIS的学习(二十六)geotools 使用 部分代码总结
2012-09-11 22:20 5614前段时间的一个项目 本来用ae完成了种种的 查询,空间分析等等 ... -
GIS的学习(二十五)geoserver wms中的各种操作API详细讲解和使用
2012-09-10 17:42 9604官方geoserver中WMS服务中几种操作的API的详细说明 ... -
GIS的学习(二十四)android异步调用geoserver wms中的地图
2012-09-10 17:38 8046在geoserver的客户端通过wms的GetMap实现 ... -
GIS的学习(二十三)geoserver中CQL和ECQL的使用
2012-09-10 16:29 6489以下引用自官方文档: CQL and ECQL¶ CQ ... -
GIS的学习(二十二)osmdroid中添加縮放控件
2012-09-06 23:09 2740package com.geoserver.osmdroid; ... -
GIS的学习(二十一)在osmdroid 地图中添加marker 并添加事件
2012-09-06 22:27 6430我有 osmdroid,overlayswithf ... -
GIS的学习(二十)基于Geoserver的WFS服务与Openlayers实现地理查询
2012-08-30 18:48 11299基于Geoserver发布的wfs服务,与Openlayers ... -
GIS的学习(十九)Geoserver使用添加,删除,查询地图中的POI
2012-08-30 17:28 10201在geoserver自定义的地图中通过geoserver ...
相关推荐
父子窗体的调用,代码很少,()()()()
此程序目的主要演示父子窗体的调用,另外演示按钮事件驱动向文本框里面填写文本 ,此程序主要参考http://blog.csdn.net/kingsollyu/article/details/8312910
点击 父窗体按钮,隐藏this 显示 子窗体,点击 子窗体,隐藏子窗体,显示父窗体
刚刚学着做的,自己觉得还可以,不过没有严格测试过,呵呵。导师要求附加父子窗体,自认为加上是累赘。但是还是加上了。
本文实例讲述了JavaScript父子窗体间的调用方法。分享给大家供大家参考。具体如下: 如果要打开一个新窗口,使用 window.open( ) 方法。 如果要关闭自身窗口,使用 window.close( ) 方法。 一、父窗体 为了便于父...
WPF简单导航框架,Window和Page(父窗体与子页面)方法相互调用。
上面描述的例子,就涉及到了一个父子窗体间的数据传递。如何实现这一数据传递,当然有很多方法。这里只是记录一下在这个例子中我使用的方法。我的方法是在子窗体点击“确定”按钮时,将操作结果构造成json格式的...
通过委托实现,初学C#的可参考,借以理解event、EventHandler等; 高级人士勿笑
VB设置窗口分辨率,通过API函数实现,多种选择……可用于仿制屏幕管理器
5.2.2 Exports关键字的使用 5.2.3 DLL中的变量 5.2.4 DLL实例:动态DLL中的窗体 5.3 DLL的调用 5.3.1 静态调用 5.3.2 动态调用 5.4 DLL的入口函数和出口函数 5.4.1 进程/线程的初始化和例程的终止 5.4.2 DLL入口/...
.NET中的方法及其调用(一) 如何判断ArrayList,Hashtable,SortedList 这类对象是否相等 帮助解决网页和JS文件中的中文编码问题的小工具 慎用const关键字 装箱,拆箱以及反射 动态调用对象的属性和方法——性能和...
5.2.4 DLL实例:动态DLL中的窗体 5.3 DLL的调用 5.3.1 静态调用 5.3.2 动态调用 5.4 DLL的入口函数和出口函数 5.4.1 进程/线程的初始化和例程的终止 5.4.2 DLL入口/出口示例 5.5 利用DLL创建插件程序 ...
9.4.2 显示DLL中的模式窗体 239 9.5 显示DLL中的无模式窗体 241 9.6 在Delphi应用程序中使用DLL 242 9.7 DLL的入口函数和出口函数 246 9.7.1 进程/线程初始化和终止例程 246 9.7.2 DLL入口/出口示例 246 9.8 DLL中的...
ADO.NET 示例应用程序:提供 ADO.NET 应用程序的示例,该示例从数据库中检索数据并将其返回到控制台。 使用 .NET 数据提供程序访问数据 使用 ADO.NET 连接到数据源:描述 ADO.NET Connection 对象,并说明如何...
2.8.4 从应用类对象中获得主框架类对象的指针 101 2.9 小结 102 第3章 Visual C++ 2010 MFC菜单编程 103 3.1 菜单编程 103 3.1.1 创建菜单 104 3.1.2 创建菜单热键 115 3.1.3 标记菜单 115 3.1.4 给菜单加入图标 119...
C) 子类继承父类,如果父类中只有一个构造方法并且有参数,那么在子类的构造方法中必须先用super调用父类构造方法并传参。 D) 以上说法都不正确。 题目11:d 程序如下: class Test { private int day; public int...
202 10.3.3 父子类间的构造器的调用流程 204 10.3.4 如何自定义构造器 207 10.4 什么是单子模式 208 10.5 构造器在程序中是何时运行的 211 10.6 综合练习 214 10.7 小结 215 10.8 习题 215 第11章 异常处理(精彩...