2012-04-12 90 views
1

我必须创建一个支持黑莓OS 4.2的AutoCompleteField。下面是我附上的屏幕截图。我已经参考了黑莓SDK,并且从5.0开始可以使用AutoCompleteField,我也已经完成了它,但是我必须为4.2 SDK做好准备。这是我对Blackberry 4.2及更高版本的要求。黑莓4.2的AutoCompleteField字段4.2

  1. AutoCompleteField其中填充了可供选择的值列表。在选择特定值时,它应该更新下面标签字段中的选定项目值。

  2. AutoCompleteField应该只允许输入数字。

enter image description here

请人帮我做同样的。

回答

5

不是一件容易的事情。您可以通过添加EditField并立即在其下面添加ListField来实现类似的功能。要模拟这种行为,你必须:
- 限制/过滤字符的种类(在你的情况下是数字)
- 对于每个类型化的字符,生成一个候选单词列表(这完全取决于你)。
- 键入一个字符后,用可用选项填充列表字段。此外,当一个字符被删除(实际上每次文本更改)。
- 焦点离开文本字段时未选择任何内容,请删除列表字段中的所有元素。用户选择一个选项时也是如此。该列表应该只包含用户输入时的元素。

要检测用户输入,您可以使用TextFilter,并将其设置为editfield.setTextFilter()。您可能还需要扩展EditFieldListField以进行自定义绘画并提供最佳外观。

注意:这种方法在某种程度上是即兴创作的,如你所见。我应该做一个类似的事情,我不相信我可以提出任何视觉上的体面。您也可以从头创建自己的自定义字段,但难度更大。