flex4 父子页面数据交互实现(回调函数)
来源:互联网 发布:马鞍山网络大学地址 编辑:程序博客网 时间:2024/06/06 05:20
在网上看到一个父子页面数据交互的例子,自己也写了写。
首先父页面test.mxml
<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" ><!-- 通过方法赋值的方式回调 --><fx:Script><![CDATA[import mx.controls.Alert;import mx.managers.PopUpManager;[Bindable]public var testForm:TestForm = new TestForm;//等会将该方法赋给子页面定义的一个方法变量myCallBackpublic function callBack(obj:Object):void{showLable.text = obj.name;}public function jump():void{//弹出子页面PopUpManager.addPopUp(testForm,this,false);//给子页面的方法变量赋为父页面的方法testForm.myCallBack = this.callBack;//新建对象并给属性赋值var obj:Object = new Object;obj.name = valueText.text;//直接调用子页面的方法将父页面的数据当参数传过去testForm.initPage(obj);}]]></fx:Script><s:VGroup horizontalAlign="center" verticalAlign="middle" width="80%" height="200"><s:Label text="我是父页面,子页面传过来的值为:"/><s:Label id = "showLable"/><s:TextInput id="valueText"/><s:Button label="点击将值传递到子页面" click="jump()"/></s:VGroup></s:Application>
子页面TestForm.mxml
<?xml version="1.0" encoding="utf-8"?><s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="400" minHeight="200" title="子页面" close="close()" ><fx:Script><![CDATA[import mx.managers.PopUpManager;import spark.components.PopUpAnchor;public var myCallBack:Function;//定义的方法变量public var mainApp:Object = null;//格式需要这样 直接赋值null,有意向可深究一下public function initPage(obj:Object):void{showLabel.text = obj.name;}public function goBack():void{//新建对象并赋值 传给子页面var obj:Object = new Object;obj.name = valueText.text;//调用方法,并将对象参数传过去myCallBack.call(mainApp,obj);}//关闭public function close():void{PopUpManager.removePopUp(this);}]]></fx:Script><s:VGroup horizontalAlign="center" verticalAlign="middle" width="80%" height="200"><s:Label text="我是子页面,父页面传过来的值为:"/><s:Label id="showLabel" /><s:TextInput id="valueText"/><s:Button label="点击将值传递到父页面" click="goBack()"/></s:VGroup></s:TitleWindow>
这样父子页面就可以数据交互了。附上截图
这样写其实就是使用了闭包传递值了,但是这样会引起内存泄漏问题,可以想想在子页面封装好的obj传到了父页面,这样它的周期就与父页面绑在一起了,那他占用的内存啥时候释放啊~父页面销毁的时候?如果父页面是主页啥的那就。。。
0 0
- flex4 父子页面数据交互实现(回调函数)
- flex父子页面数据交互实现(回调函数)
- flex4 父子页面交互实现(触发事件)
- layer.iframe父子页面之间的数据交互(1)
- flex父子页面交互实现(触发事件)
- 利用回调函数实现DLL与Qt主程序的数据交互,进一步实现对Qt主程序中的信号触发
- 父子页面交互
- layer父子页面交互
- layer父子页面交互
- layer父子页面交互
- layer父子页面交互
- (js 父子页面数据的交互以及父子页面的侦听)(客户端通用消息门户框架)
- javascript实现父子页面数据传递
- 回调函数实现
- html父子页面(弹框)的实现和交互[通信]
- layer父子页面交互(子页面form表单提交)
- iframe 父子页面之间交互
- 使用回调函数来实现jdbc操作数据库数据
- 正则表达式小结
- 使用jquery.daterange.js双日历控件时,daterangepicker初始化默认日期
- Linux之进程
- ubuntu系统截图
- uptime,Top,Free,PS,Pstree,VMStat,SysStat
- flex4 父子页面数据交互实现(回调函数)
- C++ enum用法
- LDS文件格式分析
- hive小文件合并
- 50、实例 使用jQuery管理事件之绑定多个事件
- 海量数据处理之Bloom Filter详解
- 正则表达式30分钟入门教程
- 面试算法(七)旋转数组的最小数字
- 手机应用程序设计应该避免的5个问题