J2ME使用开源UI库介绍(增订)

    这是网上转载比较宽泛的J2ME开源UI库,多是简洁的官方介绍,我下载并测试了大多数,写出一些自己的评价和在不同模拟器、手机上的测试效果,比较简单,希望对大家选型有帮助。

//*********************************************************

    J2ME自带UI不是太美观,使用起来也不太方面,为了解决这问题,很多UI库应势而出。使用这些库,可以大大简化开发,提高效率。当然有好必有坏,使用 这些库的不好的地方就是这些库通常很大,很难在一些很老的机器上运行。不过这些库都是开源的,因此可以拿它们的代码来研究研究,然后做出自己的库来。

 

Apime

http://www.java4ever.com/index.php?section=j2me&project=apime&menu=main&lang=_en Apime是开发目的是为了提供更多的功能给J2ME, 使用它可以建立适应各种手机要求的界面,管理 触摸屏,键盘。它包括文件管理 ,自定义的主题,国际化。Apime不仅可以运行在midp2.0上,还能跑在midp1.0(有些功能如全屏可能不支持)。

 

Fire

(Flexible interface Rendering engine) http://sourceforge.net/projects/fire-j2me/ :Fire是一个轻量级的,可更换外观的GUI引擎,它还支持简单的XHTML的解析。这里要注意的是fire有fire1与fire2.0,在fire2.0中才有xhtml的渲染引擎。fire 1只是一个UI的库。

下载了demo(http://sourceforge.net/project/platformdownload.php?group_id=184367),几个例子似乎都是web浏览和富文本样式的展示,唯一用到UI似乎就只有计算器,相当简单,还有可点之处的话就是很独特的气泡式对话框,在5800上跑有点延迟

 

Gear

http://www.digitalapes.net/en/applications/gear/ 为Java手机开发人员提供一个统一的基础开源框架,用于快速开发真正与实际设备无关的J2ME应用。主要特性包括:扩展性和可更换皮肤的窗口小 部件(widget)系统,多线程架构,基于事件的线程交互系统,LocationAPI ,网络通信处理功能,强大的字符串和图像公共类。

http://sourceforge.net/projects/gearjmf/files/ 感觉demo十分简洁,用了Grid的九宫格控件和滚动的列表,还有自己的canvas绘制涟漪,在俺的5800上十分流程,似乎没有展示其他控件,另外,列表和菜单对鼠标不支持,不知道是否需要写其他代码支持它。demo中未展示切换skin,也没有图像处理,但是切换图片时有比较流畅的图形滑动,但不是整体滑动。wm6菜单同样不支持鼠标,全屏

 

 

J4ME

http://code.google.com/p/j4me/ J4ME是一个J2ME应用程序开发包。它包括一个UI框架,一个日记框架用于帮助调试因不同品牌手机的差异而产生的问题,一个蓝牙GPS框架让你能够利 用JSR-179 Location API接口从蓝牙GPS设备获取定位信息和一个Java类包其中包含了J2ME中没有的方法比如双精度型数字的计算等。

全屏,完全采用自己的界面和菜单,主题很简单,控件没做太多美化,全面支持鼠标。5800上显示不了菜单栏,但是可以用导航栏控制,启动速度很慢,约3-5秒,郁闷啊 

 

jMobileCore

http://jmobilecore.sourceforge.net/  jMobileCore包是一个强大的工具用来开发J2ME应用程序.jMobileCore提供支持开发简洁的,基于Canvas的图形用户接口,快速 地数据访问,可靠地通信,简化多线程midlet应用程序。jMobileCore包可工作在任何支持J2ME (MIDP1.0 和CLDC1.0)的移动电话与PDA设备.

下载后,不明所以,很像一个game,不知道怎么使用。

 

J2MEPolish

http://www.j2mepolish.org/ :J2ME-Polish是一个德国人开发的开源项目,它提供了对j2me一整套的支持。比如支持自定义UI,支持国际化,通过build.xml生成对 各个厂商的手机,减少了程序员发布程序要对不同品牌的支持的繁琐劳动。支持采用css定制UI,自定义一套开发工具等等。

http://www.j2mepolish.org/cms/leftsection/download/download.html 居然要60多M,应该算是不错,网上有一些介绍,也是用css定制UI,不知道是否支持XHTML解析,这样的UI开发是大势所趋啊,不过很多人只是看中它的条件编译,可以很方便的定制不同机型的Midlet,java的某个特性经常被人解析为一次编写,到处编译。

 

KUIX

Kuix( Kalmeo User Interface eXtensions) http://www.kalmeo.org/projects/kuix: Kuix是一个使用XML/CSS来开发的lib,它提供了大部分UI组件,比 如:button,textfields,lists,menus,tabs等)。它的主页是源代码放在google code上,http://code.google.com/kuix,如果要使用Kuix,Kuix还依赖其它的一个项目:Kutil,这个项目也可以 在google code上下载。

5800上运行较为流畅,全面支持鼠标,但是鼠标操作反应较慢,点击缺少动态的显示,响应慢并且僵硬,可能和它用非标准菜单有关,键盘操作流畅,控件很丰富。wm6上面运行流畅,鼠标也是稍慢,进入文本控件后自动弹出输入窗口,无法在界面窗口直接输入。按关闭电话键后退出,5800按功能键退出,可以通过通话或者其他按键切换

 kuixkeyvalidator.jar 用于检测输入键盘键值的Midlet

 

LWUIT

https://lwuit.dev.java.net/ LWUIT是一个轻量级JavaME UI工具包。主要的特性包括:类似Swing 的MVC架构,支持多种布局(Layouts),皮肤更换,字体,触摸屏,动画效果,Rich控件,3D集成,Painter,模式对画 框,I18N/L10N等。值得一提的是LWUIT在wtk3.0中已经算是内置的库了。

这个不说了,挺酷的UI,网上的介绍最多,还是sun公司出品,不过用起来可不简单,用到了好几个其他的包,单纯下载它的demo是跑不起来的,原始项目是NetBeans编译的,用ant不能编译,必须手动修改一翻,还有版本太低的WTK也不能跑,22不行,252可以,算是比较难入门的。放弃他的主要原因是要求太高,在5800I上面根本跑不动,自己做的简单九宫格都跑的贼慢,这都算轻量级的话什么才算重量级?而且什么机子才能跑起来啊。

 

 

Mewt

http://mewt.sourceforge.net/ http://mewt.sourceforge.net/ 提供了一套轻便,可自定皮肤的J2ME UI控件。这些控件能够根据不同设备的屏幕大小自动调整。当前提供的控件有: tree、table、list、button等。

很小的包,但是不知为何5800上面跑会丢失控制键,按确定也无法进入选择的菜单,同时切换后即退出。S60 3rd模拟器上无法识别安装包,wm6上可以安装,可以按确定进入菜单,但是list表格无法移动,同时除菜单外,全部无法支持鼠标,可以通过主菜单切换,按取消通话键切换会弹出是否退出提示,但可以切换。比较怪异的表现,怀疑按键映射有问题

 

MWT

(Micro Window Toolkit) http://j2me-mwt.sourceforge.net  Micro Window Toolkit(MWT)是一个用于开发J2ME用户界面(UI)的工具包。它具有友好,强大,快速,开源等特性。因为它的"灵感"来自 AWT,Swing和SWT。可以使用bitmap fonts等来自定义组件。它专门为嵌入式开发而设计和优化。基于LGPL发布。

似乎主要是用来开发游戏的图形字体,而且是英文的。 

 

OpenBaseMovil

http://www.openbasemovil.org/about/ BaseMovil是一个J2ME应用程序开发框架。它由多个比较独立类库组成包括:一、OpenBaseMovil-core:整个框架的底层基础类 库,它主要提供国际化支持、任务控制、加密、压缩、浮点支持、properties文件支持、一个MVC框架、一个事件框架。二、 OpenBaseMovil-db:一个关系型数据库引擎,其中一个表格存储的数据可上千。三、OpenBaseMovil-script:一个脚本引 擎。四、OpenBaseMovil-ui:一个UI工具包。这个几类库都能够完全集成在一起使用。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值