Recently I needed to do a simple task – implement a radio button list with choices under J2ME MIDP 2.0. I started with creating an new view of type javax.microedition.lcdui.List, keeping in mind that I can just construct it with List.EXCLUSIVE and add whatever items i want and everything should work fine. Well almost… All looked nice and the items showed up very attractively, having transparency and current font set up by default, which looked quite impressive.

But than our quality assurance posted me a “small” bug. They said – after navigating from and to the screen selected item looses focus and moreover if the first item is not selected and you navigate from and to he screen you’re not able to select first choice until you move selection up and down…. What a tiny thing i thought… Should be a 5 minute fix. But when I investigated further it occurred that there is no method setting current highlighted item in list. Could be accomplished by Displayable.setCurrentItem() but this is reported to be buggy on some phones! What a mess!

Ok i thought – wise man couldn’t leave it just like that – it’s very annoying form the users point of view. So looked forward to the standard radio-list approach and found javax.microedition.lcdui.ChoiceGroup. Which in-fact worked just perfectly with one flaw – it can be placed only on a form and thus has its own control background(not transparent). Apparently non-transparent background is better than ‘buggy functionality’ in fancy list. People need software that works perfect(and looks perfect too but works comes first). Hope that thing will be fixed in new releases of MIDP. BTW heard they are going to implements impressive things there… Just can’t wait seeing ’em in action 🙂