博客的标签云功能实现已经很久了,但是只有标签功能,没有云的功能,囧!~~~
标签云主要有以下几点重要的 功能:
能根据标签下面文章的多少来决定标签的显示样式的大小
标签云能实现随机颜色
这样标签云就能云起来了,每个标签的字体大小根据数量来决定,数量越多的字体越大,最小的数量也使用12px字体,这样看起来不会太累,颜色直接随机好了
01
|
public
void
tag_cloud(Map<String, Integer> tags) {
|
04
|
List<Integer> list2 = CollectionUtils.toList(tags);
|
05
|
int
maxval = CollectionUtils.max(list2);
|
06
|
int
minval = CollectionUtils.min(list2);
|
07
|
int
spread = maxval - minval;
|
10
|
step = (maxsize - minsize) / spread;
|
11
|
String[] color =
new
String[] {
"#FF0000"
,
"#FFCC00"
,
"#FF9900"
,
|
12
|
"#0099FF"
,
"#999999"
};
|
13
|
Iterator<String> it = tags.keySet().iterator();
|
14
|
while
(it.hasNext()) {
|
15
|
String key = it.next();
|
16
|
int
val = tags.get(key);
|
17
|
int
index = RandomUtil.nextInt(
0
, color.length -
1
);
|
18
|
int
size = Math.round(minsize + ((val - minval) * step));
|
19
|
System.out.println(
"<a href=\"#\" style=\"font-size:"
+size+
"px;color:"
+color[index]+
"\">"
+key+
"</a>"
);
|
使用方法:
01
|
Map<String, Integer> tags=
new
HashMap<String, Integer>();
|
02
|
tags.put(
"java"
,
20
);
|
03
|
tags.put(
"ruby"
,
2
);
|
04
|
tags.put(
"groovy"
,
4
);
|
05
|
tags.put(
"php"
,
11
);
|
06
|
tags.put(
"scala"
,
2
);
|
08
|
tags.put(
"jquery"
,
16
);
|
09
|
tags.put(
"struts"
,
20
);
|
11
|
tags.put(
"sql"
,
10
);
|
原理基本上就这样了。。。,一个简单的标签云功能就出来了,说实话找遍百度和google都没有java
实现标签云的相关文章....最后还是根据一php哥们的思想转换为JAVA的,可惜忘了那兄弟的出处了,再次感谢下这为未知的哥们的无私贡献
上面的代码是我修改过的只是为了更好的演示tags的功能,大家可以修改成自己的POJO
来代替泛型
中的String..
分享到:
相关推荐
在这个Java开发的项目中,我们关注的是如何利用Java编程语言来实现一个动态、交互式的标签云。 Java是一种广泛使用的面向对象的编程语言,具有跨平台的特性,适合开发各种类型的应用程序,包括Web应用。在创建标签...
#### 三、使用Java实现标签云 在本案例中,作者最初尝试使用AWT来实现标签云,但最终选择了SWT作为主要工具。SWT(Standard Widget Toolkit)是一种专为Java开发的跨平台GUI库,能够提供更丰富的图形界面支持和更...
在提供的压缩包中,"JavaApk源码说明.txt"可能是对源代码的简要介绍,它可能包含了实现标签云效果的具体代码逻辑和注意事项。"千万别双击.url"则可能是一个链接,提示用户不要直接打开,而是应该参考源码或在IDE中...
在Android中,自定义视图可以满足开发者对界面组件的个性化需求,例如在这个案例中,它可能实现了标签云的3D旋转效果。自定义视图通常会重写`onDraw()`方法来完成自定义的绘制逻辑,并可能包含触摸事件处理,比如...
标签“有人云 java”进一步强调了这个模板是针对有人云平台,并且是用Java语言实现的。这表明开发者可以使用Java进行编程,利用该模板与有人云平台进行API调用,进行设备管理和数据交互。 在压缩包的文件名称列表中...
Java是当前最流行的编程语言之一,而 OSS(Object Storage Service)是阿里云提供的一种对象存储服务,通过使用Java和OSS可以实现下载功能。本文将详细介绍如何使用Java和OSS实现下载功能。 Java下载功能的实现有...
在本项目中,我们主要探讨如何使用JAVA编程语言调用海康威视(Hikvision)的SDK,以便实现摄像头的内网预览功能,并将视频流推送到阿里云服务。这一过程涉及到多个技术栈,包括后端开发、网络通信以及云端服务的集成...
本篇将深入探讨如何利用Java实现网络摄像头的监控,并进行图像变化采集。 首先,我们需要了解Java Media Framework (JMF)。JMF是Java平台上的多媒体处理框架,它允许开发者捕获、播放、处理音频和视频流。在这个...
在这个"JS制作TAG标签云文字动画特效"项目中,我们主要探讨如何利用JS实现一种常见的网页元素——标签云,并为其添加动态效果。 标签云是网站上常见的一种展示关键词或标签的方式,它以不同大小的字体显示各个标签...
这些文件可能是一个专门针对中文标签云的Flash组件,包含了实现中文支持的代码和配置,开发者可以将这个组件集成到自己的项目中,快速实现具有中文支持的标签云功能。 总之,【标签云支持中文】是现代互联网应用不...
为了实现动态效果,开发者可能使用了`ObjectAnimator`或者`ValueAnimator`来实现标签的平滑移动和旋转动画。 "千万别双击.url"可能是一个指向示例应用的链接,提醒用户不要直接点击打开,而是需要通过导入到Android...
在本教程中,我们将探讨如何在Android应用中实现一个基础的标签云功能,类似天天动听的搜索或手机市场的搜索功能。 首先,我们需要创建一个`Tag`类来存储每个标签的信息,包括文字和对应的权重。权重将决定标签在...
"基于Java实现wps在线编辑、在线预览后台服务"这个标题指出,我们将探讨一个使用Java编程语言构建的系统,该系统能够支持WPS文档的在线编辑和预览功能。这意味着该服务可能是一个Web应用程序,它允许用户在浏览器中...
1. **Android源码**:这表明实现这种3D标签云效果可能涉及到Android平台的开发,需要对Android SDK、Java编程语言以及Android系统架构有一定的理解。开发者可能需要使用自定义View或者第三方库来实现这种特效。 2. ...
- **安全认证**:利用RFID进行身份验证,结合Java实现更复杂的安全机制。 #### 三、Sun Java System RFID Software 3.0 1. **核心组件**: - **API接口**:提供了一系列用于读取、写入RFID标签以及处理数据的...
从【标签】"JAVA实现在线语音分析 语音转文字"可以推断,整个系统是用Java语言编写的,这表明开发者可能使用了Java丰富的库和框架,如JavaFX或Swing进行GUI界面设计,使用Spring Boot构建服务端,以及使用如OpenJFX...
下面,我们将深入探讨这些标签所涵盖的知识点,并结合可能包含的文件"java经典项目源码百度云.txt"进行解析。 首先,让我们聚焦于"Java"这个标签。Java是一种面向对象的、跨平台的编程语言,它的设计目标是“一次...
在本实训设计中,我们将深入探讨Java Swing图形化界面在实现“云工厂”项目中的应用。Java Swing是Java Standard Edition (Java SE) 部分的一部分,它提供了一组丰富的组件库,用于创建桌面应用程序的用户界面。这次...
【AndroidTagGroup实现3D标签云卡片效果】 在Android应用开发中,为了提供用户友好的交互体验,有时候我们需要展示大量的标签信息,而传统的线性布局可能会显得拥挤不堪。此时,3D标签云卡片效果就应运而生。这种...
3. "TagCloud" - 这可能是一个Java或Kotlin类,实现了3D标签云的基本逻辑,包括标签的生成、布局计算、3D渲染等关键功能。 为了利用这些资源,开发者需要具备一定的安卓开发基础,了解Java或Kotlin编程,同时对3D...