Table of Contents
The Lightweight User Interface Toolkit (LWUIT) is a widget library that you can bundle with your application. Inspired by Swing, it
runs on top of MIDP 2.0 and implements a peer-less graphics and UI model in a compact package with small footprint and moderate device
requirements. The lightweight characteristic makes it possible for resource-constrained devices to have a rich look and feel.
LWUIT has two components, the library itself, LWUIT.jar and the Resource Editor, ResourceEdit.exe.
In general you will use the library with an IDE or a toolkit such as the Java ME SDK. If you have a
recent version of the toolkit installed, its environment will support the addition of the LWUIT toolkit.
A minimal environment is:
3. Installation Instructions
Download the LWUIT distribution zip file and extract it.
The release contains the following:
- UIDemo - a NB 6.x project that demonstrates the library key features
- ResourceEditor.exe - a GUI utility to generate resource files and themes.
- docs - the release contains the API javadocs and a detailed developer guide
4. Using the Toolkit
With NetBeans: add the LWUIT.jar to your project(open [project properties]->[libraries & Resources] )
With the Sprint toolkit: Create a LWUIT project.
With the Wireless Toolkit add the LWUIT.jar to
\lib\ext and make sure the project bundles the
LWUIT.jar (See Settings->External APIs in the WTK)
Create a project (at least MIDP 2.0 and CLDC 1.1).
- Open the project.
- Click the Settings Button.
- Click the External APIs icon.
- For LWUIT.jar, check the Use and Bundle boxes.
5. Known Bugs/Issues
This is not an exhaustive list of known bugs. It includes those bugs that developers are most
likely to encounter when using LWUIT.
- Known issues can be seen in the public LWUIT issue tracker, to
file additional issues you can ask to join the project as an Observer role. Make sure to check the LWUIT forum before filing issues.
- Support for IndexedImages was removed from the new Theme Creator (Resource Editor), instead it is
replaced with the Timeline functionality. A new GIF option in the Theme Creator allows importing
animated GIF's as multiple images and a timeline object.
- Proguard 3.7 that ships by default with NB6.0 has issues with LWUIT. Download version 4.x and replace
the Proguard version in NB - under [NB 6.0 install dir]\mobility8\external\proguard
- Default Commands collide with combo box popups, text components etc... - when a default command is assigned to a form
it will receive an actionPerformed event as well as the component that has focus. There is no
workaround for this issue other than avoiding the default command functionality in such cases, this functionality exists
for use cases where component based interaction isn't necessary such as navigation based on lists.
- GroupLayout has bugs and is not recommended to be used until a matisse plugin is available - issue #21 (refrence numbers are from java.net issue tracker)
6. Useful Information
The LWUIT library was designed to run on any MIDP2.0 CLDC1.1, but there might be some broken devices that would fail to run a LWUIT based app.
For a more concrete devices DB see this link which is based on community reports.
Feel Free to edit this and report status on new devices