- 浏览: 37292 次
文章分类
- 全部博客 (37)
- java (37)
- [文摘20081112]经典语录 (1)
- php+mysql预查询prepare 与普通查询的性能对比 (1)
- Android采用SharedPreferences保存用户登录信息 (1)
- 找bug记(2) (1)
- 细节优化提升资源利用率 (1)
- java(j2se)学习笔记----类注释文档编写方法? (1)
- 如何查看Class文件编译的JDK版本 (1)
- 验证码显示不了,报Could not initialize class sun.awt.X11GraphicsEnvironment (1)
- Android使用KSOAP2调用WebService及正确导入jar包的问题 (1)
- The content of the adapter has changed but ListView did not receive a notification. (1)
- 很想写些CMMI的东西 (1)
- JPA & Hibernate 注解 (1)
- Java反编译工具――Jode (1)
- Eclipse3.0.0插件安装解决方法 (1)
- SVG简介及相关工具 (1)
- 开始在这个BLOG里放一部分MapXtreme2004相关代码 (1)
- 支持.NET环境的GIS开发工具MapXtreme2004 (1)
- 将DAT格式视频文件转换成ASF和WMV格式视频文件 (1)
- 《漫谈设计模式》一书终于出版了 (1)
- 一位程序员的一个LBS应用的想法 (1)
- 一刷网络投票的小程序 (1)
- 面试字符串处理之单词翻转 (1)
- rails 上载xls文件 (1)
- 如何获得Java项目文件所在的相对路径 (1)
- 学习FlexViewer(一)——事件和框架 (1)
- Android开发之消息处理机制(二)——消息循环 (1)
- JAVA操作——获取文件扩展名,去掉文件扩展名 (1)
- freemarker 读取session 值 (1)
- xfire 使用用户名/密码进行身份认证 (1)
- java中的图片处理 (1)
- HTC Touch HD2/LEO/T8585刷机教程 进三色屏 (1)
- js性能问题 (1)
- js 事件收集 (1)
最新评论
-
Glorin:
非常感谢你,让我的问题能够得以解决。
验证码显示不了,报Could not initialize class sun.awt.X11GraphicsEnvironment -
thzthbthy:
/*
* Java文件操作 获取文件扩展名
*
...
JAVA操作——获取文件扩展名,去掉文件扩展名 -
jyjava:
你debug调试,应该很快会定位到的
找bug记(2) -
xuehua1987:
上面的方法返回值是void ,怎么可以返回你取到的连接???? ...
找bug记(2)
????? 上午做了关于FlexViewer的讲座,项目组决定下面继续在FlexViewer界面上拓展,因此我也有意通过博客与大家分享。众所周知,FlexViewer是由Esri公司推出的基于Web的Flex应用框架,开发人员通过配置文件即可快速搭建一个以地图服务应用为目的的富互联网应用。
?
????? 学习FlexViewer,最重要的是掌握其框架结构,了解FlexViewer组织模式,包括VierContainer、MapManager、ConfigManager、WidgetManager的关联关系,以及事件。本篇将重点讲述FlexViewer的组织原理以及开发方法,先从事件入手,通过事件的分发与监听,将FlexViewer中的各个Manager关联起来,进而明确其组织架构。
?
????? 1、Flex Viewer事件
????? 整个FlexViewer,有两个关于事件的类EventBus和AppEvent。EventBus继承自EventDispatcher类,它是一个singleton类,并且所有AppEvent的分发都要EventBus。AppEvent事件的构造函数如下,参数包括了事件类型(type),对象类型(data)以及回调函数:
????? public function AppEvent(type:String, data:Object = null, callback:Function = null)<br>
?? ? {<br>
??????? super(type);<br>
??????? _data = data;<br>
??????? _callback = callback;<br>
???? }
???? 事件类型:AppEvent的事件类型中涵盖了所有与FlexViewer相关的,其中比较重要的有:
<br>
? ? ? APP_ERROR:APP错误事件<br>
????? CONFIG_LOADED:加载Config文件完成后调用事件
????? MAP_LOADED:加载地图完成后调用
????? SET_MAP_ACTION:与地图交互相关的事件,其data参数中包含有地图交互动作的token值,如Zoomin,Zoomout等;<br>
????? DATA_FETCH_ALL:获得所有数据时调用;
????? DATA_FETCH:获得数据时调用
????? DATA_CREATE_INFOWIDGET:创建Widget时调用<br>
? ??? WIDGET_RUN:Widget运行时调用;
????? WIDGET_CHANGE_STATE:Widget状态变化时调用,其data参数中包含了widgetID和State值<br>
????? WIDGET_FOCUS:Widget得到焦点时调用<br>
????? WIDGET_ADD:添加Widget时调用<br>
????? WIDGET_ADDED:widget已添加后调用
?
???? 2、掌握FlexViewer的架构
?
<img src="http://dl.iteye.com/upload/attachment/599022/a839c1aa-2a27-31ff-a142-c83a7a37b726.bmp" alt="" width="756" height="473">
?
???? FlexViewer中,首先构造的UIComponet就是ViewContainer。ViewContainer中首先要通过httpservice加载config.xml文件,然后加载MapManger、ConfigManager、WidgetManager等对象;
?
???? MapManager与MapMangerSkin共同表达了FlexViewer主视图,实例化了Map对象,然后通过ViewContainer.DispatchEvent方法分发AppEvent.MAP_LOADED事件,事件的参数包含了事件类型(Type),还包含了对象类型(data参数),这样就可以通过AppEvent事件的监听获得Map对象了。
?
???? ConfigManger主要用于加载widget的xml文件,每一个widget实例化之前都要加载xml文件,在xml中可以定义一些全局的变量(如geometryservice等),加载完毕之后同样通过viewContainer.DispatchEvent分发 CONFIG_LOADED事件,并添加相应的事件监听。
?
???? WidgetManager主要用于加载Widget,任何widget制作之后都要在WidgetManager中才能使用,因此该类中主要是Widget相关的事件相应。
?
<img src="http://dl.iteye.com/upload/attachment/599024/4c17e287-f281-3e0d-9e27-b88dafc75678.bmp" alt="">
<ul style="display:none;">
</ul>
<ul style="display:none;">
</ul>
发表评论
-
js 事件收集
2012-02-08 13:18 505一般事件 事件 浏 ... -
js性能问题
2012-02-08 13:13 716随着web应用的复杂度日渐提高,JavaScript代 ... -
HTC Touch HD2/LEO/T8585刷机教程 进三色屏
2012-02-07 15:53 1007[size=14px; line-height: 21 ... -
java中的图片处理
2012-02-04 12:44 758附件中的文件包括: 1.图片的压缩 2.处理圆角图片 ... -
xfire 使用用户名/密码进行身份认证
2012-02-03 16:59 1110对SOAP报文进行身 ... -
freemarker 读取session 值
2012-02-03 08:25 2434<span style="font-f ... -
JAVA操作——获取文件扩展名,去掉文件扩展名
2012-01-31 14:08 2212<p> 昨天收邮件,得知要参加一个产品部的 ... -
Android开发之消息处理机制(二)——消息循环
2012-01-11 14:53 756<h1>Android开发 ... -
如何获得Java项目文件所在的相对路径
2011-12-28 15:08 2250[size=18px;]今天在开发中做一个java项 ... -
rails 上载xls文件
2011-12-21 12:14 1059?<span style="font- ... -
面试字符串处理之单词翻转
2011-12-21 11:34 836<p align="left&quo ... -
一刷网络投票的小程序
2011-12-20 11:44 1205最近看到网上一投 ... -
一位程序员的一个LBS应用的想法
2011-12-20 10:14 674最近状态不佳, ... -
《漫谈设计模式》一书终于出版了
2011-12-19 13:09 873<p class="MsoNor ... -
将DAT格式视频文件转换成ASF和WMV格式视频文件
2011-12-17 15:29 847以*.ASF和*.WMV为后缀名的视频文件,是微软针对 ... -
支持.NET环境的GIS开发工具MapXtreme2004
2011-12-16 16:12 669<font color="#ff000 ... -
开始在这个BLOG里放一部分MapXtreme2004相关代码
2011-12-15 14:38 516MapXtreme2004是嵌入到.NET环境中的地理 ... -
SVG简介及相关工具
2011-12-14 15:47 657<span style="" ... -
Eclipse3.0.0插件安装解决方法
2011-12-14 15:27 712<p class="MsoNorma ... -
Java反编译工具――Jode
2011-12-13 11:49 739</span> </span> ...
相关推荐
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, ...
ESRI公司发布的flexviewer1.3框架的源代码
本节主要介绍了如何将FlexViewer里面的事件分发及监听事件机制剥离出来在其他项目中使用,需要的朋友可以参考下
FlexViewer开发教程、开发指南、相关实例。
FlexViewer2.3框架源码 可自由定制,开发自己的webgis
主要讲述了FlexViewer3.1版本,新增加的一些重要的特征
FlexViewer开发教程,挺不错的一个FlexViewer文档,帮助快速了解Flex框架。
从网上搜的也有,自己的理解也有,对于掌握FlexViewer真不错
flexviewer2.3源代码 配合arcgis flex api2.3使用 开发工具flash builder4
flexviewer的source code,2012年12月12日更新。
flexviewer2.5框架 很经典
改写FlexViewer2.4框架,将其用户界面改为FlexViewer1.3的样式。IDE FB4.5 SDK FLEX 4.5
ESRI公司发布的flexviewer2.4框架的源代码,Flex Viewer是ArcGIS Viewer for Flex的简称, Flex Viewer是基于ArcGIS API for Flex(简称AGS Flex API)设计的一个WebGIS应用程序,用户可以通过修改配置文件、自定义...
flexviewer简单登陆(新版本能用)
ESRI-FlexViewer解析 了解FlexViewer内的一些控件和基础应用
FlexViewer2.1框架源码 可自由定制,开发自己的webgis
flex viewer 3.0 源码 下载
ESRI公司发布的flexviewer2.0框架的源代码,较flexviewer1.3框架有很大的变化。
简要介绍了FlexViewer框架发展及其机制
FlexViewer2.2 有代码和帮助文档