介绍开源J2ME UI库
J2ME UI库除了自带的以外,还有很多开源J2ME UI库,其中很多都比J2ME的自带UI库好用。下面介绍一下这些开源J2ME UI库:
J2ME自带UI不是太美观,使用起来也不太方便,为了解决这问题,很多UI库应势而出。使用这些库,可以大大简化开发,提高效率。当然有好必有坏,使用 这些库的不好的地方就是这些库通常很大,很难在一些很老的机器上运行。不过这些库都是开源的,因此可以拿它们的代码来研究研究,然后做出自己的库来。
Apime: Apime的开发目的是为了提供更多的功能给J2ME, 使用它可以建立适应各种手机要求的界面,管理 触摸屏,键盘。它包括文件管理 ,自定义的主题,国际化。Apime不仅可以运行在midp2.0上,还能跑在midp1.0(有些功能如全屏可能不支持)。
Fire (Flexible interface Rendering engine) :Fire是一个轻量级的,可更换外观的GUI引擎,它还支持简单的XHTML的解析。这里要注意的是fire有fire1与fire2.0,在fire2.0中才有xhtml的渲染引擎。fire 1只是一个UI的库。
Gear: 为Java手机开发人员提供一个统一的基础开源框架,用于快速开发真正与实际设备无关的J2ME应用。主要特性包括:扩展性和可更换皮肤的窗口小 部件(widget)系统,多线程架构,基于事件的线程交互系统,LocationAPI ,网络通信处理功能,强大的字符串和图像公共类。
J4ME: J4ME是一个J2ME应用程序开发包。它包括一个UI框架,一个日记框架用于帮助调试因不同品牌手机的差异而产生的问题,一个蓝牙GPS框架让你能够利 用JSR-179 Location API接口从蓝牙GPS设备获取定位信息和一个Java类包其中包含了J2ME中没有的方法比如双精度型数字的计算等。
jMobileCore: jMobileCore包是一个强大的工具用来开发J2ME应用程序.jMobileCore提供支持开发简洁的,基于Canvas的图形用户接口,快速 地数据访问,可靠地通信,简化多线程midlet应用程序。jMobileCore包可工作在任何支持J2ME (MIDP1.0 和CLDC1.0)的移动电话与PDA设备.
J2MEPolish :J2ME-Polish是一个德国人开发的开源项目,它提供了对j2me一整套的支持。比如支持自定义UI,支持国际化,通过build.xml生成对 各个厂商的手机,减少了程序员发布程序要对不同品牌的支持的繁琐劳动。支持采用css定制UI,自定义一套开发工具等等。
KUIX:Kuix( Kalmeo User Interface eXtensions) Kuix是一个使用XML/CSS来开发的lib,它提供了大部分UI组件,比 如:button,textfields,lists,menus,tabs等)。它的主页是源代码放在google code上,如果要使用Kuix,Kuix还依赖其它的一个项目:Kutil,这个项目也可以在google code上下载。
LWUIT: LWUIT是一个轻量级JavaME UI工具包。主要的特性包括:类似Swing 的MVC架构,支持多种布局(Layouts),皮肤更换,字体,触摸屏,动画效果,Rich控件,3D集成,Painter,模式对画框,I18N/L10N等。值得一提的是LWUIT在wtk3.0中已经算是内置的库了。
Mewt 提供了一套轻便,可自定皮肤的J2ME UI控件。这些控件能够根据不同设备的屏幕大小自动调整。当前提供的控件有: tree、table、list、button等。
MWT (Micro Window Toolkit) Micro Window Toolkit(MWT)是一个用于开发J2ME用户界面(UI)的工具包。它具有友好,强大,快速,开源等特性。因为它的"灵感"来自 AWT,Swing和SWT。可以使用bitmap fonts等来自定义组件。它专门为嵌入式开发而设计和优化。基于LGPL发布。
OpenBaseMovil: BaseMovil是一个J2ME应用程序开发框架。它由多个比较独立类库组成包括:一、OpenBaseMovil-core:整个框架的底层基础类 库,它主要提供国际化支持、任务控制、加密、压缩、浮点支持、properties文件支持、一个MVC框架、一个事件框架。二、 OpenBaseMovil-db:一个关系型数据库引擎,其中一个表格存储的数据可上千。三、OpenBaseMovil-script:一个脚本引 擎。四、OpenBaseMovil-ui:一个UI工具包。这个几类库都能够完全集成在一起使用。
上面这些开源J2ME UI库,大家可以按自己的需求选择,也可以参考一下制作自己的库。