- 浏览: 7332472 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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的信息
做了个简单的搜索提示程序,类似google之类的搜索提示,就是输入一个内容时,会把开头对得上的内容显示出来。下面可以看看:
呵呵,这里没有显示有多少条结果,当然也要做到统计也是可以的。这里只做简单的显示。
下面就说说两种做法。
第一种,是在用户输入提示信息的时候,把用户输入的信息跟应用中存的数据进行比较,找出匹配的数据,然后 在list组件里显示出来
view plaincopy to clipboardprint?
//输入文本内容变化事件
private function inputChangeEvent():void
{
//每次输入文字变化,都检索一下,查看数据是否变化
if(currMsg != searchText.text)
{
currMsg = searchText.text;
var seachData:ArrayCollection = new ArrayCollection();
if(currMsg != "")
{
//在这里分析所有的内容,找出符合的内容
for(var i:int = 0; i < source.length; i++)
{
//逐个检索,是否具有输入的内容,有则存放进去
if(source[i].label.indexOf(currMsg) == 0)
{
seachData.addItem(source[i]);
}
}
}
//显示是否有相关的搜索相关信息,如果没有就显示默认信息
if(seachData.length == 0)
{
seachData = defaultData;
}
//显示出与搜索相关的信息
searchMsgList.visible = true;
searchMsgList.dataProvider = seachData;
}
}
恩,该函数是当输入文本框的内容有变化时触发的。代码的注释已经相当清晰了
接下来看另外一种处理发方法。其实大体的都差不多,这里只是对数据源刚传进来的时候,就马上对数据进行分析,归类,逐个分析,把具有相同内容的数据存放在一个数组里,最后把这些数据都和搜索内容捆绑,存放到一个集合里。所以当用户录入信息时,直接根据输入内容那分类好的数组就可以了
下面是传输数据源时的代码
view plaincopy to clipboardprint?
/**
* 设置需要搜索的内容
* @param:内容数组
*/
public function setSearchDatas(source:Array):void
{
//这里是数据一传递进来,就开始做分析
//对这里里面的所有数据进行检索分类,以方便输入查询
for(var i:int = 0; i < source.length; i++)
{
var key:String = source[i].label;
//对字符串长度进行检索,并且分析,对每一个字符组合都存放起来
for(var j:int = 1; j <= key.length; j++)
{
var str:String = key.substring(0,j);
//从存放有相同标题的集合中取出来
var strAry:ArrayCollection = searchMap[str] as ArrayCollection;
if(strAry == null)
{
strAry = new ArrayCollection();
searchMap[str] = strAry;
}
//存放完整的对象
strAry.addItem(source[i]);
}
}
}
然后下面是用户输入信息有变化时的相应函数
view plaincopy to clipboardprint?
//输入文本内容变化事件
private function inputChangeEvent():void
{
//每次输入文字变化,都检索一下,查看数据是否变化
if(currMsg != searchText.text && currMsg != "")
{
currMsg = searchText.text;
//显示是否有相关的搜索相关信息,如果没有就显示默认信息
var strAry:ArrayCollection = searchMap[currMsg] as ArrayCollection;
if(strAry == null)
{
strAry = defaultData;
}
//显示出与搜索相关的信息
searchMsgList.visible = true;
searchMsgList.dataProvider = strAry;
}
}
最后总结一下,如果少量数据的话,应该都没什么区别。但是,如果有大量数据时,区别就来了。
第一方法比较简单,消耗的内存比较少,但是因为是即时分析数据源,所以搜索出来可能会稍微慢点。
第二种的话,因为实现已经分析好了,可以根据用户输入的内容马上从哈希表里取出对应数据。所以取数据反应会非常快。但是占用内存可能会多点(因为要根据每个字符串组合进行存放,不过其实也是增加多一些字符串,对象只是引用而已)。
同时还做一些细的优化,例如限制长度等等,至于怎么用,根据爱好了。如果数据量大的话,个人偏向第二种。这里的两种算法其实跟具体的CS3或者flex组件不相关的,只是用list来显示而已。
呵呵,当然如果你有更好的想法,欢迎讨论。
- 12009228232018.rar (2.9 KB)
- 下载次数: 73
发表评论
-
flex 中As3Commons的使用學習
2009-10-15 12:53 3724學習Java的人,知道java中反射的强大, ... -
flex的国家化的应用
2009-09-23 08:59 2091在项目中需要使用发送短信模板的功能的,根据主题不同,模板不同, ... -
flex的沙箱问题
2009-09-14 17:14 5450在flex与google的地图整合中发现,点击了goog ... -
Flex 常用技巧
2009-09-04 13:00 2574flex是一种异步请求的技术,如果要实现同步必须在传递函 ... -
Flex 開發Google地圖
2009-08-24 13:16 24431 .获取googe的key 2.下载google的fle ... -
查询之order by,group by和having的使用
2009-08-08 15:48 4719在项目中查询常驻酒店的中住的次数最多的前10个酒店: 代码如 ... -
objectProxy的监控对象应用
2009-08-08 13:46 2677在项目中查询根据一个字段发生实现需要特殊的功能,作出相应的动作 ... -
Flex 依赖注入
2009-08-08 13:41 2094了解依赖注入 众所周 ... -
Flex 与外部的数据通信(HTTPService,URLLoader和URLRequest)
2009-08-08 13:36 7432ActionScript 3.0中提供的数据加载请求类主要是H ... -
flex 数据绑定
2009-08-08 13:31 24029.2.1 函数和类级别的绑定 [Bindable]标签打使 ... -
Flex中Entity对象与Display对象之间的数据双向动态绑定
2009-08-08 13:27 2448flex项目中对象的和组 ... -
学习ActionScript 3.0的新特点
2009-08-06 13:05 2006ActionScript3.0 是一种类型 ... -
理解 Flex itemRenderer - 第 1 部分: 内联渲染器
2009-08-05 16:37 3134Flex 提供许多控制, 它们可以按不同方式显示大量数据。Li ... -
flex 中类似Google的提示下拉菜单实现
2009-08-01 16:28 5413项目中使用类似Gooogle输入提示菜单的实现如下 ... -
针对Flex中组件的扩展的应用开发
2009-08-01 16:04 2864在项目中使用一个自定义的CheckboxGroup组件继承自C ... -
Flex中直接获取某个组件的对象
2009-08-01 15:47 2451Flex中直接获取某个组件的对象方案1: 遍历这些butto ... -
flex 查看类的各种数据的权限
2009-08-01 15:18 1868查看类的一些属性的信息:可读,可写,可读可写。 ... -
flex中getDefinitionByName 函数的使用
2009-08-01 12:40 6740在项目中自定义一个CheckboxGroup,这个控件里面 ... -
Flex 学习中数据类型必须注意的几点
2009-08-01 12:36 2249在字符串转换为int类型必须使用 最好如下: var a:i ... -
flex BindUtils的扩展的样式表绑定工具类StyleBindingUtils
2009-07-30 13:06 2215项目中使用的样式表绑定类如下: package uti ...
相关推荐
本项目聚焦于使用Flex来模拟Google的搜索功能,旨在提供类似Google搜索引擎的用户体验。下面将详细介绍如何利用Flex技术和相关知识来实现这一目标。 1. **Flex基础知识**:Flex是Adobe开发的用于构建桌面和Web应用...
Flex中类似QQ新闻提示的控件 Flex中类似QQ新闻提示的控件 Flex中类似QQ新闻提示的控件 Flex中类似QQ新闻提示的控件 Flex中类似QQ新闻提示的控件 Flex中类似QQ新闻提示的控件
Flex文本框自动提示技术是基于Adobe Flex框架的一种用户体验优化功能,它允许用户在输入文本时获得即时的下拉建议或提示。这种功能在各种应用程序中非常常见,如搜索引擎、在线表单和数据输入界面,可以显著提高用户...
Flex智能提示框是一种在用户输入时提供实时建议的交互元素,常见于搜索框或自动完成字段,能够极大地提升用户体验。这种技术主要应用于Flex框架中,它是一个基于Adobe AIR和Flash Player运行时的开源开发平台,用于...
在Flex开发中,有时我们需要为用户界面添加交互性,例如当鼠标悬停在某个元素上时显示相关的提示信息。这个场景在"flex 鼠标进入显示提示信息"的标题和描述中被提及,它涉及到如何创建一个动态的提示框,跟随鼠标的...
这种功能类似于用户在百度搜索引擎中输入关键词时,搜索引擎会自动预测并显示可能的搜索词,极大地提高了编码效率和准确性。 Flex是一种基于ActionScript的开源框架,主要用于构建富互联网应用程序(RIA)。它提供...
标题中的“flex做的googlemaps”指的是使用Adobe Flex技术来开发Google Maps的应用程序。Flex是一种基于ActionScript 3.0的开放源代码框架,用于构建富互联网应用程序(RIA),它可以与Flash Player或Adobe AIR运行...
FlexDemo实现引擎搜索是一个以Adobe Flex技术为核心的项目,它展示了如何与Java 2 Enterprise Edition (J2EE)平台集成,创建一个类似于Google的搜索引擎。在这个Demo中,我们可以通过使用Flex前端展示用户界面,同时...
这个压缩包“Flex自动完成源代码[类似Google搜索自动完成功能].zip”包含了一个实现自动完成功能的Flex组件,这在许多Web应用中都非常常见,如搜索引擎、表单输入等,能够提升用户体验,帮助用户快速找到或输入目标...
"flex气泡效果提示"项目正是针对这一问题进行的改进,它引入了更人性化、更具吸引力的提示方式,即气泡提示,以替代原有的验证信息显示。 Flex是一种流行的开源框架,主要用于创建富互联网应用程序(RIA),尤其在...
在Flex项目开发中,有时我们需要将外部网页内容嵌入到我们的应用中,这时Google IFrame就成为了一个常用的选择。IFrame(Inline Frame)是HTML的一种元素,它允许我们在一个网页中嵌入另一个网页,这对于展示第三方...
标题中的“类似谷歌图片剪切的flex+java程序”指的是一个基于Adobe Flex前端技术和Java后端服务构建的应用,它的功能类似于谷歌提供的图片上传和剪切服务。Flex是一种用于创建富互联网应用程序(RIA)的开源框架,它...
本篇文章将深入探讨在Flex端实现分页的两种方法。 第一种方法是基于客户端的分页。这种方法将所有的数据一次性从服务器获取,然后在客户端进行分页处理。在Flex中,可以利用ArrayCollection或XMLListCollection作为...
在IT行业中,Flex是一种强大的开发框架,主要用于构建富互联网应用程序(RIA)。在这个“flex 两个图片播放小程序”项目中,我们可以看到它被用来创建一个图片浏览应用,支持图片的放大和缩小功能,提供了用户友好的...
1. **Flex基础**:Flex提供了MXML和ActionScript两种编程方式。MXML是一种声明式语言,用于定义界面布局和组件,而ActionScript则是面向对象的脚本语言,用于处理程序逻辑和交互。学习Flex首先要了解这两种语言的...
有时候tree节点内容太长,就...用两种方式实现. 1.通过itemRollOver和itemRollOut,使用ToolTipManager自定义实现 2.树本身属性showDataTips,加了一些小优化。 http://www.zuidaima.com/share/1722980750003200.htm
Flex文本框自动提示源码 用到Flex文本框自动提示的功能 设计思路 思路比较简单,组件分成两个部分,1文本框;2提示的下拉列表; 自动提示: 在文本框中输入文字时,在数据源(所有的提示项)查找匹配的选项,若...
本项目“googleMap-Flex”聚焦于使用Google Map API在Flex环境中实现这一功能,Flex是一个用于构建富互联网应用(RIA)的开源框架,基于Adobe AIR和Flash Player运行时。 在Flex中使用Google Map API,首先需要获取...
在IT行业中,Flex和Flash是Adobe开发的两种用于创建富互联网应用程序(RIA)的技术。本文主要探讨如何在Flex中自定义组件,特别是针对一个搜索栏的实现。在提供的压缩包中,我们有`searchField.fla`、`searchField....
1. **MXML与ActionScript**:Flex应用主要由两种语言编写,MXML用于定义组件结构和界面布局,而ActionScript则处理逻辑和业务代码。在"万年历记事本"的源码中,MXML文件可能包含了日历视图和记事本界面的定义,而...