使用VerticalFieldManager的CustomListField

时间:2011-10-11 15:17:40

标签: blackberry java-me blackberry-jde

我的要求是通过扩展verticalfeildmanager创建一个customlistfieldmanager,我无法弄清楚如何做到这一点?

我无法理解为什么我的经理要我使用这种方法。

欢迎任何形式的帮助!

2 个答案:

答案 0 :(得分:2)

他可能会因为正常ListField的最大限制因素而要求你这样做:你被困在统一的高度。

您需要做的是拥有一个滚动VerticalFieldManager的父容器。其中的内容是自定义管理器,它们可以处理与ListField中的行相同的功能。它需要接受焦点并在点击时触发事件。您还需要跟踪它的项目编号,以便在单击它时,它知道如何通知任何听众关于选择了哪一个。此外,父VFM需要能够跟踪当前选择的“行” - 在这种情况下,哪一个具有焦点。

修改评论

如果您在每个中添加NullField,它可以接受焦点但实际上不会显示为任何内容。要确定“行”(Manager)是否具有焦点,可以在该Manager上使用getFieldWithFocus(),而不返回null的是所选行。你可能还需要做一些自定义绘画来绘制选择亮点

答案 1 :(得分:1)

在从VerticalFieldManager添加和删除元素时,您必须从CustomListFieldManager动态添加和删除自定义元素。

您的经理问,因为他希望您学习如何处理自定义对象以了解如何使用经理。