如何在j2me(java)中在一个屏幕中显示多个列表屏幕

Posted

技术标签:

【中文标题】如何在j2me(java)中在一个屏幕中显示多个列表屏幕【英文标题】:How to display multiple List screens in one screen in j2me (java) 【发布时间】:2012-07-31 18:05:41 【问题描述】:

我已经使用 KXML 和 LCDUI ListForm 在 j2me (java) 中开发了 Rss Reader 应用程序。当我运行我的应用程序时,我可以在设备上显示 LCDUI 列表(“Titles”,“Images”)屏幕。

但我有一个要求: 我有 3 个 rss feed xml 文件,当我运行我的应用程序时,应该读取 3 个 xml 文件并且输出应该是 只有一个屏幕: 在这个屏幕上,我应该能够显示 3 个 rss 提要列表屏幕(即每个 LCDUI 列表屏幕都包含来自 rss xml 文件的标题和图像列表)

如何在 j2me 中实现上述要求?

【问题讨论】:

我的回答对您有帮助吗? 【参考方案1】:

在一个屏幕上放置多个带有标题和图像的列表最直接的方法是在表单中使用ChoiceGroup 对象:

ChoiceGroup 是一组可选元素,旨在放置在Form 中。可以使用需要做出单一选择或允许多个选择的模式来创建组。实现负责提供这些模式的图形表示,并且必须为不同的模式提供视觉上不同的图形。例如,它可能对单选模式使用“单选按钮”,对多选模式使用“复选框”...

如果您的列表是EXCLUSIVEMULTIPLE 类型,则具有相同类型的选择组可能是您最接近的选项。对于IMPLICIT 类型的列表,您可能需要更有创意才能保持用户体验不变。

在从列表移至选项组时,请考虑可用于这些种类项目的特定 API。

例如,键入POPUP 旨在节省屏幕空间——您可能希望它在同一屏幕上容纳三个列表。还有像 ItemStateListenerItemCommandListener 这样的 API 扩展了处理用户输入的方式。

如果您发现简单的 ChoiceGroup 对您想要实现的目标过于有限,请考虑改用 CustomItem,或者甚至可以使用 LWUIT 或 J2ME Polish 等第三方 UI 库。

另一种选择(我个人更喜欢的选择)是保留List 对象。真正的用户不太可能用“我需要一个 lcdui 表单对象”之类的术语来指定他们的要求。想想他们真正想要什么功能,以及如何使用列表来实现。从用户的角度来看,与设计合理的基于列表的屏幕集相比,具有三个选项组的表单可能会变得不太舒服。

【讨论】:

嗨,我已经使用 ChoiceGroup 来满足我的要求,但是,我想使用 CHOICE.IMPLICIT,但是,如果我使用它,它会给出异常,然后,图像没有正确显示? @PavanKumarRagi 你做错了,异常表明了这一点。你的列表是隐含的,你不能不改变就使用它(见我的回答)。改用 EXCLUSIVE 或 POPUP 选择组 - 或者,更好的是,考虑我在答案中推荐的最后一个选项(带列表) yaa,我现在使用了 POPUP,在我点击表单上的 pupup 后,我能够正确显示图像,但在此之前,在我的表单上,图像无法正确显示.. 谢谢.. ...

以上是关于如何在j2me(java)中在一个屏幕中显示多个列表屏幕的主要内容,如果未能解决你的问题,请参考以下文章

如何在 j2me(java) 屏幕上创建标题

如何使用 LWUIT 在 J2ME 屏幕底部设置标签?

在 j2me 中加载屏幕

如何结合 J2me 波兰语创建 J2me(java)Project

java语言或j2me的问题!在画布界面用一个drawString怎么实现自动换行?(就是文字很长,大于屏幕的宽时...

如何在 J2me 中处理网络线程调用和等待进度?